Існує різновид, який називається богобогозор. По-перше, він перевіряє перші 2 елементи та богосортує їх. Далі він перевіряє перші 3, богосортує їх тощо.
Якщо список не вийде з ладу в будь-який час, він буде перезапущений шляхом повторного запуску перших 2. Регулярний богосорт має середню складність O(N!)
, цей алгоритм має середню складністьO(N!1!2!3!...N!)
Редагувати : щоб дати вам уявлення про те, наскільки велика ця кількість, для 20
елементів цей алгоритм займає в середньому 3.930093*10^158
років , що значно перевищує запропоновану теплову смерть Всесвіту (якщо це станеться) 10^100
років ,
тоді як сортування злиття займає близько .0000004
секунд , сортування бульбашок .0000016
секунд , а богосорт займає 308
роки , 139
дні , 19
години , 35
хвилини , 22.306
секунди , якщо припустити, що рік становить 365,242 дня, а комп'ютер робить 250 000 000 32-бітових цілих операцій в секунду.
Edit2 : Цей алгоритм не такий повільний, як диво-сортування «алгоритм», який, ймовірно, подібний сорту, отримає комп'ютер, засмоктаний у чорну діру, перш ніж він вдало сортує 20 елемнтів, але якби це було, я б оцінив середню складність від 2^(32(the number of bits in a 32 bit integer)*N)(the number of elements)*(a number <=10^40)
років ,
оскільки гравітація прискорює переміщення альфа-чіпів, і є 2 ^ N станів, що є 2^640*10^40
, або приблизно 5.783*10^216.762162762
років , хоча якби список розпочався сортованим, його складність була б лише O(N)
швидшою, ніж сортування злиття, яке є лише N log N навіть в гіршому випадку
Edit3 : Цей алгоритм дійсно повільніше , ніж чудо то , як розмір стає дуже великим, скажімо , 1000, так як мій алгоритм буде мати час виконання 2.83*10^1175546
років , в той час як алгоритм диво начебто час роботи 1.156*10^9657
років .