Tartalomjegyzék:

Hogyan számítják ki az összevonási rendezés bonyolultságát?
Hogyan számítják ki az összevonási rendezés bonyolultságát?

Videó: Hogyan számítják ki az összevonási rendezés bonyolultságát?

Videó: Hogyan számítják ki az összevonási rendezés bonyolultságát?
Videó: Why Is Merge Sort O(n * log(n))? The Really Really Long Answer. 2024, Április
Anonim

2 válasz. Egy A[L, R] csomópont két csomópontra való felosztása R−L+1 időt vesz igénybe, majd ezután összevonása a két gyermekcsomópont A[L, M] és A[M+1, R] ismét A[R−L+1] időt vesz igénybe. Így minden csomópontra a műveletek száma a algoritmus teljesít megegyezik az adott csomópontnak megfelelő tömb méretének kétszeresével.

Ezzel kapcsolatban hogyan működik az összevonási rendezés?

Íme, hogyan használja az egyesítés rendezése az oszd meg és uralkodj módszert:

  1. Osszuk meg úgy, hogy megtaláljuk a p és r közötti félúton lévő q számot.
  2. Győzz le az altömbök rekurzív rendezésével az osztási lépés által létrehozott két részprobléma mindegyikében.
  3. Kombinálja úgy, hogy a két rendezett altömböt visszaolvassa az egyetlen rendezett altömbbe [o.

Továbbá, mi a nagy O bonyolultsága az egyesítés rendezésénél? Összevonási rendezés egy istálló fajta ami azt jelenti, hogy egy tömbben ugyanaz az elem megtartja eredeti pozícióját egymáshoz képest. Teljes idő bonyolultság nak,-nek Összevonás rendezés van O (nLogn). Hatékonyabb, mivel legrosszabb esetben a futásidő is az O (nlogn) A tér bonyolultság nak,-nek Összevonás rendezés van O (n).

mi a legrosszabb esetben az összevonás bonyolultsága?

n*log(n)

Hány összehasonlítást végez az egyesített rendezés?

Amikor az egyik listában elfogynak az elemek, a fennmaradó elemeket az utolsó helyekre helyezzük rendezve lista. Ennek eredményeként összevonása két összesen n elemű listához legfeljebb n-1 szükséges összehasonlítások.

Ajánlott: