在一个数组中找出和为目标值的那 两个 整数,并返回他们的数组下标python代码(Leetcode1)
最近跟著國外的導師做語音情感識別,開始踏上了學習python之路,之前一直不愿意接觸python,感覺c++更牛一點,C++會了之后python很簡單的就學會了,上手后兩種感覺:1 真香? 2不像想象的那么簡單。忙完老師布置的任務之后,又要立一波flag了,每天都在leetcode練練手,不知道能堅持三天嗎,不管了,flag還是要立的。
?
def twoSum(nums, target):
? ? hashmap={}
? ? for ind,num in enumerate(nums):
? ? ? ? hashmap[num] = ind
? ? for i,num in enumerate(nums):
? ? ? ? j = hashmap.get(target - num)
? ? ? ? if j is not None and i!=j:
? ? ? ? ? ? return [i,j]
作者:lao-la-rou-yue-jiao-yue-xiang
鏈接:https://leetcode-cn.com/problems/two-sum/solution/xiao-bai-pythonji-chong-jie-fa-by-lao-la-rou-yue-j/
來源:力扣(LeetCode)
這個算法是我從題解里面找到的,我是菜鳥一個,暫時寫不出來什么牛逼的算法,前期只能學習人家的了,記錄下來,方便自己回憶,也為剛上手的同學提供一個方便。
enumerate() 函數用于將一個可遍歷的數據對象(如列表、元組或字符串)組合為一個索引序列,同時列出數據和數據下標,一般用在 for 循環當中
seq = ['one', 'two', 'three'] for i, element in enumerate(seq):print (i, element)輸出:
完整代碼:
def twoSum(nums, target): hashmap={} #創建一個空的哈希表 for ind,num in enumerate(nums):#將數組的數據和下標存入創建好的哈希表 ind代表下標 num代表數據hashmap[num] = ind for i,num in enumerate(nums): #利用目標值去減其中一個數,查找這個差是否存在于哈希表并存jj = hashmap.get(target - num) if j is not None and i!=j: return [i,j]?
?
?
總結
以上是生活随笔為你收集整理的在一个数组中找出和为目标值的那 两个 整数,并返回他们的数组下标python代码(Leetcode1)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: fastboot no permissi
- 下一篇: feign踩坑_spring cloud