Cuprins:

Cum se calculează complexitatea sortării îmbinării?
Cum se calculează complexitatea sortării îmbinării?

Video: Cum se calculează complexitatea sortării îmbinării?

Video: Cum se calculează complexitatea sortării îmbinării?
Video: Merge sort time complexity analysis 2024, Mai
Anonim

2 Răspunsuri. Împărțirea unui nod A[L, R] în două noduri durează R−L+1 timp și apoi contopirea cele două noduri copil A[L, M] și A[M+1, R] iau din nou timp A[R−L+1]. Astfel, pentru fiecare nod, numărul de operații este algoritm performs este egal cu de două ori dimensiunea matricei corespunzătoare acelui nod.

În ceea ce privește acest lucru, cum funcționează sortarea de îmbinare?

Iată cum sortarea prin îmbinare folosește divide-and-conquer:

  1. Împărțiți găsind numărul q al poziției la jumătatea distanței dintre p și r.
  2. Cuceriți prin sortarea recursivă a subbarajelor din fiecare dintre cele două subprobleme create de pasul de împărțire.
  3. Combină prin îmbinarea celor două subtaze sortate înapoi în matricea unică de subbary sortată[p..

De asemenea, care este complexitatea mare O pentru sortarea prin îmbinare? Sortare îmbinare este un grajd fel ceea ce înseamnă că același element dintr-o matrice își menține pozițiile inițiale unul față de celălalt. Timp total complexitate de Sortare îmbinare este O (nLogn). Este mai eficient, deoarece în cel mai rău caz este și timpul de rulare O (nlogn) Spațiul complexitate de Sortare îmbinare este O (n).

care este complexitatea sortării de îmbinare în cel mai rău caz?

n*log(n)

Câte comparații face sortarea prin îmbinare?

Când rămânem fără elemente dintr-una dintre liste, punem elementele rămase în ultimele sloturi ale sortat listă. Ca urmare, contopirea două liste care au un total de n elemente necesită cel mult n-1 comparatii.

Recomandat: