Комментарии 7
Goto сортировка: при сортировке код по условию выскакивает из алгоритма, выполняет какой-то кусок кода, затем возвращается и продолжает сортировку.
Бомбическая сортировка: при определенном условии в алгоритме сортировки завершается сама программа
Указывали ли в комментариях к прошлой статье квантовую сортировку?
С использованием квантового источника случайных чисел случайно перемешиваем массив.
Если массив оказался отсортирован - возвращаем его, иначе - уничтожаем вселенную. Если принять многомировую интерпретацию квантовой механики, то в процессе сортировки появляется куча параллельных вселенных. В итоге остается только та, где массив отсортирован.
Вот у нас сортировка за O(n)!
import itertools
import random
def quantum_sort(arr):
# Создаём суперпозицию всех возможных перестановок
superposition = list(itertools.permutations(arr))
# "Измеряем" состояние: с большей вероятностью выбираем упорядоченную
ordered_state = [state for state in superposition if state == tuple(sorted(arr))]
if ordered_state:
# С вероятностью 99% возвращаем упорядоченную
return list(ordered_state[0]) if random.random() < 0.99 else list(random.choice(superposition))
else:
# Если упорядоченных нет, возвращаем случайное состояние
return list(random.choice(superposition))
Варинт через суперпозицию
Бог не играет в кости? :))))
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Сортировки Либеральная, по Бакунину и некоторые другие