标签:twosum IV bar __name__ font on() return output lse
class Solution(object):
# @return a tuple, (index1, index2)
def twoSum(self, num, target):
d = {}
for i, e in enumerate(num):
if e in d:
return d[e] + 1, i + 1
d[target - e] = i
s = Solution()
print (s.twoSum([0, 2, 1,0], 0))
print (s.twoSum([2,4,6],6))
Result:
(1, 4) (1, 2)
xrange=range class Solution(object): # @return a tuple, (index1, index2) def twoSum(self, num, target): dict = {} for i in xrange(len(num)): x = num[i] if target-x in dict: return (dict[target-x]+1, i+1) dict[x] = i s = Solution() print (s.twoSum([3, 2, 4], 6))
Result:
(2, 3)
class Solution(object): def twoSum(self, nums, target): # two point nums_index = [(v, index) for index, v in enumerate(nums)] nums_index.sort() begin, end = 0, len(nums) - 1 while begin < end: curr = nums_index[begin][0] + nums_index[end][0] if curr == target: return [nums_index[begin][1], nums_index[end][1]] elif curr < target: begin += 1 else: end -= 1 if __name__ == ‘__main__‘: # begin s = Solution() print (s.twoSum([0, 1, 2, 0], 0))
Result:
标签:twosum IV bar __name__ font on() return output lse
原文地址:https://www.cnblogs.com/lijinghuabj/p/9206612.html