logo

Analiza complexității în timp și spațiu a sortării fuzionarii

The Complexitatea timpului de Merge Sort este O(n log n) în ambele in medie și cele mai rele cazuri . Complexitatea spațială a Sortare îmbinare este Pe) .

Aspect Complexitate
Complexitatea timpului O(n log n)
Complexitatea spațială Pe)

Analiza complexității în timp a sortării prin îmbinare:

Luați în considerare următoarele terminologii:



T(k) = timpul necesar sortării k elemente
M(k) = timpul necesar pentru a îmbina k elemente

Deci, se poate scrie

cum să dezvăluiți aplicațiile ascunse

T(N) = 2 * T(N/2) + M(N)
= 2 * T(N/2) + constantă * N



Aceste elemente N/2 sunt în continuare împărțite în două jumătăți. Asa de,

T(N) = 2 * [2 * T(N/4) + constant * N/2] + constant * N
= 4 * T(N/4) + 2 * N * constantă
. . .
= 2k* T(N/2k) + k * N * constantă

Poate fi împărțit maxim până când rămâne un element. Deci, atunci N/2k= 1. k = log 2 N



T(N) = N * T(1) + N * log2N * constantă
= N + N * log2N

Prin urmare, complexitatea timpului este O(N * log 2 N) .

Deci, în cel mai bun caz, în cel mai rău caz și în cazul mediu, complexitatea timpului este aceeași.

mysql nu este egal

Analiza complexității spațiale a sortării de îmbinare:

Sortare îmbinare are o complexitatea spatiului de Pe) . Acest lucru se datorează faptului că folosește o matrice auxiliară de dimensiune n pentru a îmbina jumătățile sortate ale matricei de intrare. Matricea auxiliară este folosită pentru a stoca rezultatul îmbinat, iar matricea de intrare este suprascrisă cu rezultatul sortat.