added solution of different methods
This commit is contained in:
parent
3456cd63be
commit
c0ea57c627
@ -22,7 +22,39 @@ def twoSum(numbers, target):
|
||||
last -= 1
|
||||
else:
|
||||
last += 1
|
||||
# # two-pointer
|
||||
# def twoSum1(self, numbers, target):
|
||||
# l, r = 0, len(numbers)-1
|
||||
# while l < r:
|
||||
# s = numbers[l] + numbers[r]
|
||||
# if s == target:
|
||||
# return [l+1, r+1]
|
||||
# elif s < target:
|
||||
# l += 1
|
||||
# else:
|
||||
# r -= 1
|
||||
|
||||
# # dictionary
|
||||
# def twoSum2(self, numbers, target):
|
||||
# dic = {}
|
||||
# for i, num in enumerate(numbers):
|
||||
# if target-num in dic:
|
||||
# return [dic[target-num]+1, i+1]
|
||||
# dic[num] = i
|
||||
|
||||
# # binary search
|
||||
# def twoSum(self, numbers, target):
|
||||
# for i in xrange(len(numbers)):
|
||||
# l, r = i+1, len(numbers)-1
|
||||
# tmp = target - numbers[i]
|
||||
# while l <= r:
|
||||
# mid = l + (r-l)//2
|
||||
# if numbers[mid] == tmp:
|
||||
# return [i+1, mid+1]
|
||||
# elif numbers[mid] < tmp:
|
||||
# l = mid+1
|
||||
# else:
|
||||
# r = mid-1
|
||||
|
||||
print(twoSum([2,7,11,15], 9))
|
||||
print(twoSum([-1,0], -1))
|
||||
|
||||
Loading…
Reference in New Issue
Block a user