![]() |
![]() |
virt |
![]()
Сообщение
#1
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 419 Пол: Мужской Репутация: ![]() ![]() ![]() |
Описание и реализация алгоритмов:
****** ****** Сравнительная скорость работы некоторых нижеприведенных алгоритмов сортировки: ![]() Примечание: size: размер сортируемой последовательности n: количество сортировок для замера времени *: RadixSort в последнем тесте прогонялся при параметрах: size=21000; n=100 |
![]() ![]() |
klem4 |
![]()
Сообщение
#2
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
Сортировка методом поиска нового номера (в новый массив)
Краткая теория: Последовательно для каждого элемента массива вычисляется его новая позиция в отсортированном массиве, рассчитывается кол-во элементов, значения которых
Особенности: Требуется дополнительный массив, не чувствительный к изначальной упорядоченности. Оценка числа операций: N*N type Пример использования: NewNSort(mass1, NewMass, n); Массив NewMass будет состоять из элементов массива mass1, но уже отсортированных. На небольших массивах работает неплохо. Добавлено: Тесты на скорость (в условных единицах): 1. (набор данных - массив из 8 элементов типа integer) Количество тестов: n = 4 000 000 #1: 292 (метод нового номера) #2: 558 (сортировка пузырьком) #3: 490 (поразрядная сортировка - radixsort) 2. (набор данных - массив из 800 элементов типа integer) Количество тестов: n = 225 #1: 95 (метод нового номера) #2: 174 (сортировка пузырьком) #3: 2 (поразрядная сортировка - radixsort) На небольших массивах действительно достаточно быстрый метод, но с увеличением размера массива "метод нового номера" начинает значительно проигрывать поразрядной сортировке. volvo |
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 17:12 |