Середній час розгляду QuickSort
є O(n*logn) .19 грудня 2023 р
Часова складність. Середня часова складність Quicksort становить O(n*log(n)), який є швидшим, ніж сортування злиттям, сортування бульбашками та інші алгоритми сортування. Однак у найгіршому випадку часова складність становить O(n^2), коли вибір опорної точки постійно призводить до незбалансованих розділів.
Найгірша часова складність типової реалізації QuickSort становить O(n2). Найгірший випадок відбувається, коли вибрана опорна точка завжди є крайнім (найменшим або найбільшим) елементом. Це відбувається, коли вхідний масив відсортований або відсортований у зворотному порядку, і перший або останній елемент вибрано як опору.
Типові аргументи про те, що середній час виконання кейсу Quicksort дорівнює O(n log n), включають те, що у середньому випадку кожна операція розділення ділить вхідні дані на дві частини однакового розміру. Операції розділу займають O(n) часу.
Ось визначення середньої часової складності алгоритму: Нехай T(x) — це час виконання деякого алгоритму A на вхідних даних x. Для кожного n нехай µn буде розподілом на входах довжини n. Середній випадок або очікувана часова складність A на входах довжини n є Tavg(n):=Ex∼μnT(x).
Отже, загальна часова складність дорівнює O(n * n). Середня кількість перестановок для будь-якого випадкового масиву становить (N^2)/4, тому середня складність випадку становить O(N^2).