例2:给定一个整形数组A,以及整数M=9,判断A中是否存在这样的i,j,使得 M =A[i]+A[j];
这里我们用折半查找。
折半查找:就是在一个升序的数组中查找指定的元素,先找出数组中的中间元素,如果等于指定元素,那么直接返回,如果小于指定元素,那么直接在数组前半部分查找;如果大于指定元素,直接在数组后半部分查找;
def binaryFind(A,m):
if len(A) ==0:
return -1
i = int(len(A) / 2)
if A