うまくいかなかったコード
void sort(vector<int>& x)
{
for (vector<int>::size_type i = 0; i < x.size(); i++){
for (vector<int>::size_type j = 0; j < x.size(); j++){
if(x[j] > x[j+1]){
int tmp;
tmp = x[j];
x[j] = x[j+1];
x[j+1] = tmp;
}
}
}
}
うまくいかなかった理由
x[j+1]で格納されていないところまで参照していた。
これでうまくいった
for (vector<int>::size_type j = 0; j < x.size() - 1; j++){
ふたつめのfor文のjの上限を-1した。