您的位置:首页 > 其它

2-Sum问题

2016-05-05 09:49 225 查看


bool TwoSum(int* array, int nSize, int nSum, int& a, int& b)

{

   sort(array, array+nSize);

   int nBegin=0;

   int nEnd=nSize-1;

   int nCur;

   bool bFind= false;

   while(nBegin<nEnd)

   {

       nCur=array[nBegin]+array[nEnd];
  if(nCur>nSum)
  nEnd--;
  else if(nCur <nSum)
  nBegin++;
  else
  {
    bFind=true;
a=array[nBegin];
b=array[nEnd];
break;
  }

   }

   return bFind;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: