Как стать автором
Обновить

Комментарии 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))

Варинт через суперпозицию

Бог не играет в кости? :))))

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории