ed *_*ale -4 c++ runtime-error vector
我在运行良好的代码块上运行此程序,但在在线判断中,它为输入相同的输入提供运行时错误.我无法弄清楚这个错误的原因是什么.
vector<int> twoSum(vector<int> &numbers, int target)
{
vector<int> c ;
sort(numbers.begin(),numbers.end()-1);
vector<int>::iterator i = numbers.begin();
vector<int>::iterator j = numbers.end()-1;
while(i<=j)
{
int sum = *i + *j;
if(sum==target)
{ c.push_back(i-numbers.begin());
c.push_back(j-numbers.begin());
//cout<<*i<<" "<<*j<<endl;
break;
}
else if(sum<target) i++;
else j--;
}
return c;
}
Run Code Online (Sandbox Code Playgroud)
sort(numbers.begin(),numbers.end()-1);
Run Code Online (Sandbox Code Playgroud)
在空numbers向量上调用此选项会导致运行时错误.它应该是sort(numbers.begin(), numbers.end());
| 归档时间: |
|
| 查看次数: |
1082 次 |
| 最近记录: |