leetcode167.兩數之和 II
阿新 • • 發佈:2018-12-13
''' 雙指標問題 升序的陣列 定義兩個指標l,r 初始位置是1和n 如果nums[l] + nums[l] > target r -- 如果nums[l] + nums[l] < target l ++ ''' def twoSum(numbers, target): n = len(numbers) if n ==0 : return False l, r = 0, n-1 while l < r and r < n: if numbers[l] + numbers[r] > target: r -= 1 elif numbers[l] + numbers[r] < target: l += 1 elif numbers[l] + numbers[r] == target: print([l+1,r+1]) return [l+1,r+1] numbers = [-3,3,4,90] target = 0 twoSum(numbers, target)