1. 两数之和

给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 的那 两个 整数,并返回它们的数组下标。

你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。

你可以按任意顺序返回答案。

 

个人答案: 

class Solution:
    def twoSum(self, nums: List[int], target: int) -> List[int]:
        self.target = target
        self.nums = nums
        result = []
        flag = False
        for i in range(len(nums)):
            if not flag:
                temp = target - nums[i]
                if temp not in nums[i+1:]:
                    pass
                else:
                    j = nums.index(temp,(i+1))
                    result.append(i)
                    result.append(j)
                    flag = True
            else: break
        return result
 
结果:

 

思路:

遍历整个nums的list,取出第一个数,用target减去后在剩余的队列中查看有无对应的结果,如果有就记录下对应的index并加入结果list中并跳出循环,如果没有就继续比较直至结束。

 

 

posted @ 2021-02-08 23:12  请叫我德华  阅读(35)  评论(0编辑  收藏  举报