logo

Аналіз часової та просторової складності сортування злиттям

The Часова складність Сортування злиттям є O(n log n) в обох середній і найгірші випадки . Космічна складність Сортування злиттям є O(n) .

Аспект Складність
Часова складність O(n log n)
Космічна складність O(n)

Аналіз тимчасової складності сортування злиттям:

Розглянемо такі терміни:



T(k) = час, витрачений на сортування k елементів
M(k) = час, витрачений на об’єднання k елементів

рядкові функції в java

Отже, це можна написати

T(N) = 2 * T(N/2) + M(N)
= 2 * T(N/2) + константа * N



Ці N/2 елементи далі розділені на дві половини. Так,

T(N) = 2 * [2 * T(N/4) + константа * N/2] + константа * N
= 4 * T(N/4) + 2 * N * константа
. . .
= 2k* T(N/2k) + k * N * константа

Його можна розділити максимум, поки не залишиться один елемент. Отже, тоді N/2k= 1. k = журнал 2 Н



onclick javascript

T(N) = N * T(1) + N * log2N * постійна
= N + N * log2Н

Мультиплексор 8 до 1

Тому часова складність є O(N * log 2 N) .

Отже, у найкращому, гіршому та середньому випадку часова складність однакова.

Аналіз просторової складності сортування злиттям:

Сортування злиттям має складність простору з O(n) . Це тому, що він використовує допоміжний масив розміру п щоб об’єднати відсортовані половини вхідного масиву. Допоміжний масив використовується для зберігання об’єднаного результату, а вхідний масив перезаписується відсортованим результатом.