Сортировка

алгоритмы сортировки, визуализованные

Сортировка пузырьком

Сортировка методом выбора.

Сортировка методом вставки.
Подходит для уже упорядоченных элементов. И доходит до O(N), если элементы достаточно упорядочены.

Сортировка Шелла

Алгоритм использует сортировку методом вставки. O(N 3/2)

Сортировка слиянием.

N*log(N). Требует доп. памяти. В jdk6 используется по умолчанию для метода Collections.sort. Только модифицрованный её вариант.

Сортировка пирамидальная.Тоже требует доп. памяти, т.к использует спец. структуру пиирамида.

Быстрая сортировка.
Если данные недостаточно случайны, может ухудшиться до O(N2).

TimSort.
Относительно молодая сортировка. Лучшая по эффективности на данный момент. Используется в python по умолчанию, а также в android jdk. Возможно будет использовать в jdk7 по умолчанию. За основу взята сортировка слиянием и сортировка методом вставки.

Комментариев нет:

Отправить комментарий