Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.12.2022, 14:03   #1
MaxBrat
Пользователь
 
Регистрация: 27.09.2022
Сообщений: 32
Восклицание Нужна переделать алгоритм сортировки

У меня есть алгоритм сортировки:

Код:
void sort_array(employee* a, int kol)

{
	int i; employee x; bool f;
	for (int i = 0; i < kol; ++i) {
		int f = i;
		for (int j = i + 1l; j < kol; ++j)
			if (a[f].Diagonal < a[j].Diagonal)
				f = j;
		if (f != i) {
			x = a[i]; a[i] = a[f]; a[f] = x;
		}
	}
}
Мне нужно его переделать в алгоритм выбора. Заранее благодарю))
MaxBrat вне форума Ответить с цитированием
Старый 04.12.2022, 15:11   #2
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

Так это уже алгоритм сортировки выбором.
macomics вне форума Ответить с цитированием
Старый 04.12.2022, 16:33   #3
MaxBrat
Пользователь
 
Регистрация: 27.09.2022
Сообщений: 32
По умолчанию

Цитата:
Сообщение от macomics Посмотреть сообщение
Так это уже алгоритм сортировки выбором.
Я также думаю. А вот мой преподаватель так не думает((. Ситуация не из простых канечно.

Последний раз редактировалось MaxBrat; 04.12.2022 в 16:43.
MaxBrat вне форума Ответить с цитированием
Старый 04.12.2022, 16:59   #4
MaxBrat
Пользователь
 
Регистрация: 27.09.2022
Сообщений: 32
По умолчанию

Цитата:
Сообщение от macomics Посмотреть сообщение
Так это уже алгоритм сортировки выбором.
Мне преподаватель говорит что это сортировка пузырьком.
MaxBrat вне форума Ответить с цитированием
Старый 04.12.2022, 17:35   #5
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

Жаль что преподаватель так думает.
Тогда покажите ему сортировку пузырьком
Код:
void sort_array(employee* a, int kol) {
	int i; employee x;
	for (int i = 0; i < kol; ++i)
		for (int j = 0; j < kol - 1; ++j)
			if (a[j].Diagonal < a[j + 1].Diagonal) {
				x = a[j]; a[j] = a[j + 1]; a[j + 1] = x;
			}
}

Последний раз редактировалось macomics; 04.12.2022 в 18:02.
macomics вне форума Ответить с цитированием
Старый 04.12.2022, 17:40   #6
MaxBrat
Пользователь
 
Регистрация: 27.09.2022
Сообщений: 32
По умолчанию

[QUOTE=macomics;1854438]Жаль что преподаватель так думает.
Тогда покажите ему сортировку пузырьком
Код:
void sort_array(employee* a, int kol) {
	int i; employee x;
	for (int i = 0; i < kol; ++i)
		for (int j = i; j < kol - 1; ++j)
			if (a[j].Diagonal < a[j + 1].Diagonal) {
				x = a[j]; a[j] = a[j + 1]; a[j + 1] = x;
			}
}
Хм а в этом есть какой то смысл если на алгоритм выбора он говорит пузырь то на алгоритм пузыря он будет говорить алгоритм выбора.
MaxBrat вне форума Ответить с цитированием
Старый 04.12.2022, 18:02   #7
macomics
Участник клуба
 
Регистрация: 17.04.2022
Сообщений: 1,833
По умолчанию

Забыл во вложенном цикле поправить i на 0.
macomics вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как переделать алгоритм Примана в алгоритм Краскала? buk_bear Помощь студентам 1 14.12.2021 16:36
Алгоритм сортировки. EasyMak Помощь студентам 4 16.04.2015 16:23
Алгоритм сортировки BarsRus Помощь студентам 3 03.06.2010 16:11
переделать программу сортировки текстового файла в паскале onangel Помощь студентам 0 06.12.2009 15:57
Нужна помощь в Pascal (Алгоритм сортировки) keanemusic Помощь студентам 9 08.02.2009 17:37