首页 > 编程语言 > 详细

leetcode python 1.Two Sum

时间:2018-03-03 20:14:03      阅读:202      评论:0      收藏:0      [点我收藏+]
 1 class Solution(object):
 2     def twoSum(self, nums, target):
 3         """
 4         :type nums: List[int]
 5         :type target: int
 6         :rtype: List[int]
 7         """
 8         d = {}# 新建一个字典存放 key为nums中的值 value为nums中值对应的序号
 9         size = 0
10         while size < len(nums):
11             if not nums[size] in d:
12                 d[nums[size]] = size #遍历nums 向字典里传键值对
13             if target - nums[size] in d: #target减去目前遍历到的这个值,其结果也在字典的key中(即nums中的值)
14                 if d[target-nums[size]] !=size: # 必须是字典中的value(即nums中值的序号)不相同  如:nums = [2,3,5] target = 6, 不做这个判断会输出[1,1]
15                     ans = [d[target - nums[size]] , size]
16                     return ans
17             size = size + 1

 

leetcode python 1.Two Sum

原文:https://www.cnblogs.com/TomoFan/p/8502678.html

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