Я хочу создать функцию для сортировки случайных чисел (сгенерированных с помощью другой функции), и я пытался сделать это некоторое время, но ничего не получалось.Теперь у меня проблема в том, что иногда моя программа компилируется без каких-либо проблем, а иногда она говорит «векторный индекс вне диапазона», и даже если она компилируется правильно, она вставляет некоторые числа в неправильном порядке (особенно, когда следующее число для сортировки меньше, чемПредыдущая).Я пытался использовать отладчик и выяснить, что не так, но для меня все выглядит хорошо.Не могли бы вы быть так добры и помочь мне?Большое спасибо.
std::vector <int> insertion_sort(std::vector <int> generated)
{
using namespace std;
bool emplaced = false;
vector <int> buffor(1);
buffor[0] = generated[0];
for (int i = 1; i < generated.size(); i++)
{
emplaced = false;
if (generated[i] >= buffor[i-1])
{
buffor.push_back(generated[i]);
}
else
{
int x = 2;
while (((i - x) > -1))
{
if (emplaced == true)
{
break;
}
if ((i - x) == 0)
{
buffor.emplace(buffor.begin(), generated[i]);
emplaced = true;
}
if (generated[i] < bufor[i - x])
{
}
else
{
buffor.emplace(buffor.begin() + (i-x), generated[i]);
emplaced == true;
}
x++;
}
}
}
return buffor;
}