1 题目描述
2 解题思路 :双指针
设置一堆双指针,左指针一开始指向序列首位,右指针一开始指向序列末尾
每次比较两个指针指向的值,如果等于target,返回;如果大于target,说明当前两个值的和大了,那么就把右指针向左移动一格;如果小于target,说明当前两个值的和小了,那么就把左指针向右移动一格
class Solution(object):
def twoSum(self, numbers, target):
left=0
right=len(numbers)-1
while(left<right):
tmp=numbers[left]+numbers[right]
if(tmp==target):
return([left+1,right+1])
elif(tmp>target):
right-=1
else:
left+=1