|
Администратор
87851 / 53172 / 249
Регистрация: 10.04.2006
Сообщений: 13,764
|
||||||
Сортировки02.11.2008, 20:31. Показов 140096. Ответов 14
Метки Алгоритм Фон-Неймана, Быстрая сортировка, Поразрядная сортировка, Сортировка "пузырьком", Сортировка "шейкером", Сортировка вставками, Сортировка выбором, Сортировка вычерпыванием, Сортировка подсчетом, Сортировка слиянием, Сортировка Шелла, Сортировки (Все метки)
Сортировка массива различными способами
93
|
||||||
| 02.11.2008, 20:31 | |
|
Ответы с готовыми решениями:
14
Разработайте рекурсивную процедуру сортировки последовательности методом быстрой сортировки Хоара
|
|
Почетный модератор
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
||||||
| 27.05.2009, 16:32 | ||||||
|
Простой пример сортировки 2х упорядоченных массивов слиянием.
42
|
||||||
|
Почетный модератор
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
|
| 10.06.2009, 10:33 | |
|
Пример реализации сортировки массива слиянием по алгоритму фон Неймана(нерекурсивный вариант).
https://www.cyberforum.ru/post188802.html
15
|
|
|
Почетный модератор
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
||||||
| 26.11.2009, 08:06 | ||||||
|
Сортировка одного массива методом слияний, рекурсивный вариант.
23
|
||||||
|
3067 / 727 / 69
Регистрация: 24.09.2008
Сообщений: 1,531
|
||||||
| 02.12.2009, 05:49 | ||||||
|
Поразрядная сортировка целых положительных чисел:
23
|
||||||
|
Почетный модератор
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
|
| 11.10.2010, 09:05 | |
|
Внешняя сортировка слиянием двух файлов. Предложена Mawrat.
Осуществить слияние файлов в один
5
|
|
|
|
|||||||||||
| 15.07.2012, 14:23 | |||||||||||
|
Методы внешней сортировки: метод прямого слияния.
Сортировки со слиянием, как правило, применяются в тех случаях, когда требуется отсортировать последовательный файл, не помещающийся целиком в основной памяти. Алгоритм слияния (на примере массива)
Для слияния выполняются следующие действия: сравниваются p[1] и q[1], и меньшее из значений записывается в r[1]. Предположим, что это значение p[1]. Тогда p[2] сравнивается с q[1] и меньшее из значений заносится в r[2]. Предположим, что это значение q[1]. Тогда на следующем шаге сравниваются значения p[2] и q[2] и т.д., пока мы не достигнем границ одного из массивов. Тогда остаток другого массива просто дописывается в "хвост" массива r.
Алгоритм сортировки прямым слиянием
Сортировка состоит из последовательности шагов, в каждом из которых выполняется распределение состояния файла A в файлы B и C, а затем слияние файлов B и C в файл A. На первом шаге для распределения последовательно читается файл A, и записи a1, a3, ..., a(n-1) пишутся в файл B, а записи a2, a4, ..., an - в файл C (начальное распределение). Начальное слияние производится над парами (a1, a2), (a3, a4), ..., (a(n-1), an), и результат записывается в файл A. На втором шаге снова последовательно читается файл A, и в файл B записываются последовательные пары с нечетными номерами, а в файл C - с четными. При слиянии образуются и пишутся в файл A упорядоченные четверки записей. И так далее. Перед выполнением последнего шага файл A будет содержать две упорядоченные подпоследовательности размером n/2 каждая. При распределении первая из них попадет в файл B, а вторая - в файл C. После слияния файл A будет содержать полностью упорядоченную последовательность записей.
Реализация для типизированного файла (Turbo Pascal)
Процедура MergeSort на входе запрашивает только доступ к сортируемому файлу.
Далее на жестком диске компьютера создаются 2 вспомогательных файла B и C, в которые будут распределены записи из главного файла A. После выполнения сортировки файлы автоматически сотрутся с внешнего носителя. Алгоритм сортировки состоит из нескольких этапов: 1) Начальное распределение записей из файла A в файлы B и C. 2) Сравнение записей из файлов В и C и постепенное слияние в файл A. 3) Вывод на экран содержимого файла A после слияния. Производится поэтапно после каждого распределения в упорядоченные пары. Процедура метода прямого слияния выглядит следующим образом:
3
|
|||||||||||
|
Почетный модератор
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
||||||
| 15.07.2012, 14:34 | ||||||
|
Не понял для чего это.
Только для заполнения файла?
0
|
||||||
|
Модератор
|
||||||||||||||||
| 26.03.2016, 10:29 | ||||||||||||||||
|
Для сортировки пузырьком c остановкой в нехудшем случае количество сравнений можно сократить, если запоминать не только факт наличия обмена, но и позицию, в которой был последний обмен. Очевидно, что начиная с этой позиции массив уже отсортирован, повторно просматривать его в этой части нет необходимости:
Поскольку шейкерная сортировка -- это две пузырьковых в разных направлениях, к ней указанная оптимизация также применима:
1
|
||||||||||||||||
|
Модератор
|
||||||
| 23.06.2016, 15:37 | ||||||
|
Про сортировку вставками можно сделать одно важное замечание.
Поскольку часть сортируемого массива слева от текущего элемента является уже отсортированной, для поиска положения текущего элемента возможно применение бинарного поиска:
0
|
||||||
|
Модератор
|
||||||||||||||||||||||||||
| 16.03.2017, 20:41 | ||||||||||||||||||||||||||
|
Поразрядная сортировка целых положительных чисел по возрастанию, вариант LSD (Least Significant Digit radix sort):
Лёгким движением руки можно сократить число проходов с 2 до 1 на каждый байт значения:
Имеет смысл использовать более производительный вариант возврата содержимого b^ в a:
Смена направления сортировки на убывание/невозрастание:
3
|
||||||||||||||||||||||||||
|
Модератор
|
||||||
| 04.10.2018, 21:06 | ||||||
|
Сортировка парным обменом или нечетно-четная перестановка
0
|
||||||
|
Модератор
|
||||||
| 16.09.2019, 11:24 | ||||||
|
Сортировка Шелла с шагом 3*k+1:
0
|
||||||
|
Модератор
|
|||||||||||
| 08.05.2021, 19:53 | |||||||||||
|
Пирамидальная сортировка (сортировка кучей, HeapSort)
Или так:
0
|
|||||||||||
|
Модератор
|
||||||
| 12.03.2022, 20:01 | ||||||
|
Сортировка слиянием нерекурсивная с за
0
|
||||||
| 12.03.2022, 20:01 | |
|
Помогаю со студенческими работами здесь
15
Сортировки Сортировки Методы сортировки Организация сортировки
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|