Care este complexitatea algoritmului de sortare heap?
Care este complexitatea algoritmului de sortare heap?

Video: Care este complexitatea algoritmului de sortare heap?

Video: Care este complexitatea algoritmului de sortare heap?
Video: Build Heap Algorithm | Proof of O(N) Time Complexity 2024, Noiembrie
Anonim

Sortarea heap este un algoritm pe loc. TimeComplexity : Complexitatea timpului de heapify este O(Logn). Complexitatea timpului de createAndBuildHeap() este O(n) și în general complexitatea timpului de Heap Sort este O(nLogn).

În ceea ce privește acest lucru, care este algoritmul de sortare heap?

Algoritm de sortare heap este împărțit în două părți de bază: Crearea a Morman a listei/matricei nesortate. Apoi o sortat matricea este creată prin eliminarea în mod repetat a celui mai mare/mai mic element din morman , și inserându-l în matrice. The morman este reconstruit după fiecare îndepărtare.

În mod similar, care este timpul obișnuit de rulare a unui algoritm de sortare heap? Cu toate acestea, quicksort are cel mai rău caz timpul pentru alergat de O (n 2) O(n^2) O(n2) și o complexitate spațială în cel mai rău caz de O (log ? n O(log n O(logn), deci dacă este foarte important să aveți un caz rapid cel mai rău) timpul pentru alergat și utilizarea eficientă a spațiului, heapsort este cea mai buna varianta.

În mod similar, se întreabă care este complexitatea funcției Heapify?

Ideea principală este că în build_heap algoritm actualul îngrămădit costul nu este O(log n) pentru toate elementele. Când îngrămădit este numit, timpul de rulare depinde de cât de departe se poate deplasa elementul în arbore înainte ca procesul să se încheie. Cu alte cuvinte, depinde de înălțimea elementului din heap.

Ce algoritm de sortare are cea mai bună complexitate asimptotică?

Pentru Cel mai bun Inserarea carcasei Fel și Heap Sort sunt cele mai bune unul ca al lor Cel mai bun timpul de rulare a cazului complexitate este O(n). Pentru caz mediu cel mai bine asimptotic timpul de rulare complexitate este O(nlogn) care este dat de Merge Fel , Heap Fel , Rapid Fel . Pentru cel mai rău caz Cel mai bun timpul de rulare complexitate este O(nlogn) care este dat de Merge Fel , Heap Fel.

Recomandat: