Что такое мультиплексирование

Ответ

Ответ не найден

Ответ 18+ 🔞

А, ну это ж классика, блядь! Сидишь такой, читаешь про алгоритмы, а там — овердохуища разных сортировок. Ну, типа, пузырьковая, быстрая, слиянием... И вроде всё понятно, но потом смотришь на код и думаешь: «Ёпта, а почему вот тут O(n log n), а тут O(n²)?»

Вот смотри, возьмём, например, пузырьковую сортировку. Это ж как мытьё окон, сука: туда-сюда, туда-сюда, пока всё не блестит. И каждый раз, блядь, самый тяжёлый элемент «опускается» на дно, как булыжник в болоте.

def bubble_sort(arr):
    n = len(arr)
    for i in range(n):
        for j in range(0, n - i - 1):
            if arr[j] > arr[j + 1]:
                arr[j], arr[j + 1] = arr[j + 1], arr[j]
    return arr

Видишь эти вложенные циклы? Это и есть O(n²) — квадратичная сложность, ёбушки-воробушки! На маленьком массиве — похуй, а на тысяче элементов уже начинается пиздец: комп будет тупить, как Герасим из той истории, когда его про Муму спрашивали.

А вот быстрая сортировка — это уже хитрая жопа. Берёшь опорный элемент (pivot), раскидываешь всё, что меньше него, налево, а что больше — направо. Потом рекурсивно делаешь то же самое с каждой кучей. И выходит в среднем O(n log n), что, в общем-то, охуенно быстрее.

def quick_sort(arr):
    if len(arr) <= 1:
        return arr
    pivot = arr[len(arr) // 2]
    left = [x for x in arr if x < pivot]
    middle = [x for x in arr if x == pivot]
    right = [x for x in arr if x > pivot]
    return quick_sort(left) + middle + quick_sort(right)

Но тут, блядь, есть подвох: если опорный элемент выбирать криво (например, всегда брать первый), то в худшем случае получится та же O(n²). Вот и думай теперь, э бошка, как не облажаться.

А слиянием — это вообще отдельная песня, блядь. Там массив режется пополам, каждая половинка сортируется, а потом два отсортированных куска сливаются в один. Красота, да? Сложность O(n log n) гарантированная, но памяти жрёт, как не в себя. Ну, типа, за всё надо платить, в рот меня чих-пых.

Так что, когда выбираешь алгоритм, смотри не только на красоту идеи, но и на данные. Иначе выйдет, как в том анекдоте: «Мыши кололись, плакали, но продолжали жрать кактус». Не будь такой мышью, сука.