@kyklaed

Верно ли сделана сортировка пузырьком?

Добрый день! подскажите верно ли я сделал сортировку ?

#include <iostream>

using namespace std;

int main(){
	const int N = 9;
	int mass[N]={0,1000,401,-98,7,110,9,1332,0};
	
	for (int i=0;i<N;i++){
		for (int j=0;j<N-1;j++){
			if (mass[i]<mass[j]){
				double temp = mass[i];
				mass[i]=mass[j];
				mass[j]=temp;
			}
		}
	}
	for (int i=0;i<9;i++){
		cout<<mass[i]<<"\n";
	}
	return 0;
}
  • Вопрос задан
  • 167 просмотров
Решения вопроса 1
Не совсем верно, но это похоже на сортировку пузырьком или сортировку простыми обменами.

for (int i = 0; i < N; i++) {
    for (int j = N - 1; j > i; j--) {
        if (mass[j - 1] > mass[j]) {
            double temp = mass[j];
            mass[j] = mass[j - 1];
            mass[j - 1] = temp;
        }
    }
}


Для примера, сортировка вставками:

for (int i = 1; i < N; i++) {
    for (int j = i; j > 0 && mass[j - 1] > mass[j]; j--) {
        double temp = mass[j];
        mass[j] = mass[j - 1];
        mass[j - 1] = temp;
    }
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы