发布于 2016-01-15 12:05:57 | 375 次阅读 | 评论: 0 | 来源: PHPERZ
Leetcode 在线编程网站
leetcode 是一个美国的在线编程网站,上面主要收集了各大IT公司的笔试面试题,对于应届毕业生找工作是一个不可多得的好帮手。
初始版本:
def twoSum(self, nums, target):
dic = dict() //参考1 {}更快一些
first = 0
sec = 0
for index in range(0, len(nums)): //参考2 xrange更省内存 xrange在python3中被一冲,用range代替
num = nums[index]
if dic.has_key(num): //参考3 has_key在python3中被移除
sec = index + 1
first = dic[num] + 1
break
else:
key = target - num
dic[key] = index
return [first, sec]
最终版本:
def twoSum(self, nums, target):
dict = {}
for index in xrange(0, len(nums)):
num = nums[index]
if num in dict:
return [dict[num] + 1, index + 1]
else:
dict[target - num] = index