给定一个有序数组a,长度为len,和一个数x,判断A数组里面是否存在两个数,他们的和为x。
bool judge(int *a, int len, int x)
{
if (a == NULL)
{
return false;
}
int *left = a;
int *right = a+len-1;
while (left < right)
{
int sum = *left + *right;
if (sum == x)
{
return true;
}
if (sum > x)
{
right--;
}
else
{
left++;
}
}
return false;
}