两数之和 python

2019-03-18  本文已影响0人  吕阳
class Solution(object):
    def twoSum(self, nums, target):
        """
        :type nums: List[int]
        :type target: int
        :rtype: List[int]
        """
        if len(nums)<=1:
            return None
        buff={}
        for i in range(len(nums)):
            if nums[i] in buff:
                return [i,buff[nums[i]]]
            else:
                buff[target-nums[i]]=i
class Solution(object):
    def twoSum(self, nums, target):
        """
        :type nums: List[int]
        :type target: int
        :rtype: List[int]
        """
        num_dict = {}
        for i, num in enumerate(nums):
            complement = target - num 
            if complement in num_dict:
                return [num_dict[complement], i]
            num_dict[num] = i
class Solution:
    # @return a tuple, (index1, index2)
    # 8:42
    def twoSum(self, nums, target):
        d={}
        for i,num in enumerate(nums):
            if target-num in d:
                return d[target-num], i
            d[num]=i
上一篇下一篇

猜你喜欢

热点阅读