力扣:1两数之和(python)-------->双向取值
生活随笔
收集整理的這篇文章主要介紹了
力扣:1两数之和(python)-------->双向取值
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目:給定一個整數數組?nums?和一個整數目標值?target,請你在該數組中找出?和為目標值?target? 的那?兩個?整數,并返回它們的數組下標。
class Solution:def twoSum(self, nums: List[int], target: int) -> List[int]:# 1.創建一個空字典,dict1 = {}# 2.計算輸入的列表的總長度length = len(nums)for i in range(length//2+1):out1 = target - nums[i] # nums[i]是從左開始取值out2 = target - nums[length-i-1] # nums[length-i-1] 是從右開始取值# 3.如果out1不在字典中,即out1+num[i]不等于target,則記錄nums[i]的值和indexif out1 not in dict1:dict1[nums[i]] = i# 4.否則的話就說明找到了兩個數加起來等于target,所以就返回這兩個數的坐標else:return [dict1[out1], i]# 5.同理對out2也是同樣的if out2 not in dict1:dict1[nums[length-i-1]] = length-i-1else:return [dict1[out2], length-i-1]總結
以上是生活随笔為你收集整理的力扣:1两数之和(python)-------->双向取值的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: shutil常用语法
- 下一篇: 力扣:7整数反转(python)