Алгоритм Пузырьком в C++.
Подскажите в чём ошибка.
void stupid_sort(vector &x)
{
for (int i = 0; i < x.size() - 1; i++)
{
for (int j = x.size() - 1; j < i; j++)
if (x[j - 1] > x[j])
{
temp = x[j - 1];
x[j - 1] = x[j];
x[j] = temp;
}
else break;
}
}
Выдаёт ошибку в 6-ой 8-ой и 10-ой строке.
Из условия, что в той же самой программе алгоритм Глупой сортировки
void stupid_sort(vector &x)
{
for(int i = 0; i < x.size() - 1;)
if(x[i + 1] < x[i])
{
swap(x[i], x[i + 1]);
i = 0;
}
else i++;
}
Работает так как надо.
Ответы на вопрос:
Объяснение:
Ну букву 'T' замените на int, к примеру:
C++Выделить код
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
void bubbleSort(int* arr, int size) // Сортировка пузырьком
{
int tmp;
for(int i = 0; i < size - 1; ++i) // i - номер прохода
{
for(int j = 0; j < size - 1; ++j) // внутренний цикл прохода
{
if (arr[j + 1] < arr[j])
{
tmp = arr[j + 1];
arr[j + 1] = arr[j];
arr[j] = tmp;
}
}
}
}
Передавать массив вот так:
bubbleSort(имя_массива, количество_элементов);
0
Дана точка на плоскости с координатами (х, у). Составить программу, которая выдает одно из сообщений «Да», «Нет», «На границе» в зависимости от того, лежит ли точка внутри заштрихованной области, не заштрихованной области или на её границе. Области задаются графически следующим образом.
Популярно: Информатика
-
snezhanavasileozvjsv23.03.2020 20:28
-
vladimirnvrskp0845301.02.2023 09:53
-
DashaKim11724.01.2020 02:38
-
ЕгороваАйсена09.02.2022 17:08
-
Goncharovskai05.06.2020 03:51
-
tyulegenevapolina10.05.2023 22:41
-
lenok070116.05.2021 10:51
-
virina05923.03.2021 19:50
-
boldarev200124.05.2023 03:32
-
romanenckoalia09.11.2022 10:24