|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
04.03.2012, 13:14 | #1 |
Пользователь
Регистрация: 19.12.2011
Сообщений: 90
|
Сортировки массивов!
Дана последовательность: 9,6,3,7,0. Записать с помощью сортировки: обмена, выбора и простыми вставками(включения).
|
04.03.2012, 15:58 | #2 |
Форумчанин
Регистрация: 26.07.2011
Сообщений: 376
|
1)Обмен ( или же Сортировка пузырьком )
( сюда же в принципе могу впихнуть "улучшенный метод", но думаю будет жирно как для вас) учитывая что вы даже не пытались ничего написать, или же банально поискать. Суть: За каждый проход элементы последовательно сравниваются попарно и, если порядок в паре неверный, выполняется обмен элементов. Проходы по массиву повторяются до тех пор, пока на очередном проходе не окажется, что обмены больше не нужны, что означает — массив отсортирован. При проходе алгоритма, элемент, стоящий не на своём месте, «всплывает» до нужной позиции как пузырёк в воде, отсюда и название алгоритма. Пример: на входе ( 1 6 3 5 4 ) Будем идти по порядку, выбираем первую пару 1 и 6 ( первый проход ) (1 6 3 5 4) 1>6 ( условие не выполняется ), переходим к след. паре 6 и 3 ( второй проход ) (1 6 3 5 4) 6>3 ( условие выполняется ) значит эти два элемента меняются местами отсюда получаем след. (1 3 6 5 4) сравниваем след. два элемента 6>5 ( условие выполняется ) ( 1 3 5 6 4 ) 6>4 ( 1 3 5 4 6 ) ( третий проход ) наш алгоритм снова сравнивает ... и когда он доходит до пары 5 и 4 ( 5>4 ), то происходит обмен. И далее когда массив снова проходит ( а в даной программе он проходит ещё раз, т.к. это далеко не идеальный вариант ), то после получаем результирующий упорядоченный массив чисел. Код:
Сначала он сортирует два первых элемента массива. Затем алгоритм вставляет третий элемент в соответствующую порядку позицию по отношению к первым двум элементам. После этого он вставляет четвертый элемент в список из трех элементов. Этот процесс повторяется до тех пор, пока не будут вставлены все элементы. Код:
Находим минимальное значение в текущем списке производим обмен этого значения со значением на первой неотсортированной позиции теперь сортируем хвост списка, исключив из рассмотрения уже отсортированные элементы Код:
Люблю на ты.Я человек простой
Последний раз редактировалось Leshii; 04.03.2012 в 16:19. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Алгоритмы сортировки массивов С++ | Sunless | Помощь студентам | 1 | 29.03.2011 17:10 |
Пузырьковый метод сортировки массивов | Lunex.08 | Общие вопросы C/C++ | 4 | 07.10.2010 16:00 |
Освоение алгоритмов сортировки элементов двумерных массивов. | николай28 | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 31.05.2010 22:30 |
Методы сортировки массивов!!! | >>arty<< | Помощь студентам | 2 | 20.01.2010 18:39 |