最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

如何用chat-gpt 刷大廠算法代碼-面試題之阿里巴巴篇1

2023-04-12 22:25 作者:AI黑馬教學(xué)課堂  | 我要投稿

寫(xiě)代碼劍指 Offer 24\. 反轉(zhuǎn)鏈表

以下是 Python 代碼實(shí)現(xiàn),用于反轉(zhuǎn)一個(gè)單鏈表:


```python

class ListNode:

? ? def __init__(self, val=0, next=None):

? ? ? ? self.val = val

? ? ? ? self.next = next


def reverseList(head: ListNode) -> ListNode:

? ? prev = None

? ? curr = head

? ? while curr:

? ? ? ? next_node = curr.next

? ? ? ? curr.next = prev

? ? ? ? prev = curr

? ? ? ? curr = next_node

? ? return prev

```


該算法使用三個(gè)指針 prev、curr 和 next_node 來(lái)完成鏈表的反轉(zhuǎn)。在循環(huán)中,每次將當(dāng)前節(jié)點(diǎn) curr 的 next 指向前驅(qū)節(jié)點(diǎn) prev,然后將 prev 和 curr 向后移動(dòng)一個(gè)位置,直到 curr 到達(dá)鏈表末尾,最后返回反轉(zhuǎn)后的頭節(jié)點(diǎn) prev。


劍指 Offer 53 \- I\. 在排序數(shù)組中查找數(shù)字

以下是 Python 代碼實(shí)現(xiàn),用于在排序數(shù)組中查找數(shù)字 target 的出現(xiàn)次數(shù):


```python

from typing import List


def search(nums: List[int], target: int) -> int:

? ? left, right = 0, len(nums) - 1

? ? while left <= right:

? ? ? ? mid = (left + right) // 2

? ? ? ? if nums[mid] > target:

? ? ? ? ? ? right = mid - 1

? ? ? ? elif nums[mid] < target:

? ? ? ? ? ? left = mid + 1

? ? ? ? else:

? ? ? ? ? ? break

? ? else:

? ? ? ? return 0

? ?

? ? count = 1

? ? i, j = mid - 1, mid + 1

? ? while i >= left and nums[i] == target:

? ? ? ? count += 1

? ? ? ? i -= 1

? ? while j <= right and nums[j] == target:

? ? ? ? count += 1

? ? ? ? j += 1

? ? return count

```


該算法使用二分查找的思想來(lái)找到目標(biāo)值 target 在排序數(shù)組中的位置 mid,然后從 mid 向左和向右分別遍歷,統(tǒng)計(jì)目標(biāo)值 target 出現(xiàn)的次數(shù)。如果 target 不在數(shù)組中,則返回 0。


最大子序和 用代碼實(shí)現(xiàn)

以下是 Python 代碼實(shí)現(xiàn),用于求解最大子序和:


```python

from typing import List


def maxSubArray(nums: List[int]) -> int:

? ? ans = nums[0]

? ? sum = 0

? ? for num in nums:

? ? ? ? if sum > 0:

? ? ? ? ? ? sum += num

? ? ? ? else:

? ? ? ? ? ? sum = num

? ? ? ? ans = max(ans, sum)

? ? return ans

```


該算法使用動(dòng)態(tài)規(guī)劃的思想來(lái)求解最大子序和。其中,ans 表示當(dāng)前最大的子序和,sum 表示當(dāng)前的連續(xù)子序和。在遍歷數(shù)組 nums 的過(guò)程中,如果 sum 大于 0,則將 sum 加上當(dāng)前元素 num,否則將 sum 更新為當(dāng)前元素 num。然后每次更新 ans 的值為 ans 和 sum 中的較大值,最終返回 ans 即可。

加Q裙 811604914,在這里了解AI在各行各業(yè)的運(yùn)用GPT+設(shè)計(jì)師、新媒體、程序員、律師,② ?設(shè)計(jì)師、新媒體、程序員、律師、金融分析師、廚師……各職業(yè)AI實(shí)戰(zhàn)應(yīng)用演示,淘汰你的不是AI,而是你不會(huì)使用AI。在這里了解AI在各行各業(yè)的運(yùn)用,用上AI,跟著時(shí)代大勢(shì)走,轉(zhuǎn)變思維方式,成為新的一輪互聯(lián)網(wǎng)時(shí)代風(fēng)口的受益人。

求求小主關(guān)注,點(diǎn)贊,收藏學(xué)習(xí),持續(xù)更新AI技術(shù)。


如何用chat-gpt 刷大廠算法代碼-面試題之阿里巴巴篇1的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
平乡县| 宜都市| 宁河县| 山东| 萍乡市| 大方县| 边坝县| 盱眙县| 巫山县| 板桥市| 霍邱县| 保山市| 关岭| 绥芬河市| 南宁市| 巴南区| 碌曲县| 沁水县| 东港市| 安庆市| 通山县| 湘乡市| 化州市| 罗平县| 蒲城县| 桂东县| 府谷县| 万载县| 海盐县| 九龙县| 龙口市| 鄂伦春自治旗| 中超| 左贡县| 天峻县| 东丰县| 维西| 获嘉县| 连云港市| 宁乡县| 合肥市|