IL Complessità temporale di Merge Sort è O(n log n) in entrambi i media E casi peggiori . La complessità spaziale di Unisci ordinamento È SU) . 
| Aspetto | Complessità |
|---|---|
| Complessità temporale | O(n log n) |
| Complessità spaziale | SU) |
Analisi della complessità temporale del Merge Sort:
Considera le seguenti terminologie:
T(k) = tempo impiegato per ordinare k elementi
M(k) = tempo impiegato per unire k elementicome convertire int in stringa
Quindi, può essere scritto
T(N) = 2 * T(N/2) + M(N)
= 2 * T(N/2) + costante * N
Questi N/2 elementi sono ulteriormente divisi in due metà. COSÌ,
T(N) = 2 * [2 * T(N/4) + costante * N/2] + costante * N
= 4 * T(N/4) + 2 * N * costante
. . .
= 2K*T(N/2K) + k * N * costante
Può essere diviso al massimo finché non rimane un elemento. Allora N/2K= 1. k = logaritmo 2 N
svuotamento cache npm
T(N) = N * T(1) + N * log2N*costante
= N + N * log2Ndifferenza di date in Excel
Pertanto la complessità temporale è O(N*log 2 N) .
Quindi nel caso migliore, nel caso peggiore e nel caso medio la complessità temporale è la stessa.
Analisi della complessità spaziale dell'ordinamento di unione:
Unisci ordinamento ha un complessità spaziale Di SU) . Questo perché utilizza un array ausiliario di dimensioni N per unire le metà ordinate dell'array di input. L'array ausiliario viene utilizzato per memorizzare il risultato unito e l'array di input viene sovrascritto con il risultato ordinato.