首页 > 其他 > 详细

1. Two Sum

时间:2018-05-20 13:36:44      阅读:127      评论:0      收藏:0      [点我收藏+]

Description:

Given an array of integers, return indices of the two numbers such that they add up to a specific target.

You may assume that each input would have exactly one solution, and you may not use the same element twice.

  

Example:

Given nums = [2, 7, 11, 15], target = 9,

Because nums[0] + nums[1] = 2 + 7 = 9,
return [0, 1].

  

Solutions:

 

class Solution(object):
    def twoSum(self, nums, target):
        """
        :type nums: List[int]
        :type target: int
        :rtype: List[int]
        """
        for onenum in nums:
            other = target - onenum  # 根据前面两个数的相加得到这个结果,那么相减则得到另外一个数的值
            f = nums.index(onenum)
            if other in nums[f+1:]:
                return [f,nums[f+1:].index(other)+f+1]

另外的做法本质相同:

class Solution(object):
    def twoSum(self, nums, target):
  
        for i in range(len(nums)):
            temp = target - nums[i]
            if temp in nums and i != nums.index(temp): # 加入了次数限制条件
                return [i, nums.index(temp)]

1. Two Sum

原文:https://www.cnblogs.com/qianyuesheng/p/9063169.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!