Wpisany przez Michał Knasiecki
sobota, 13 sierpnia 2005 10:47
Jest to metoda bardziej skomplikowana niż sortowanie bąbelkowe czy przez wstawianie, ale za to działa w krótszym czasie. Zrozumienie algorytmu HeapSort wymaga zaznajomienia się z pojęciem Kopca/Stogu.
Budowa drzewa binarnego z elementów tablicy, którą mamy posortować wygląda następująco:
Złożoność tego algorytmu to O(nlogn).
- Zaczynamy od pierwszego elementu tablicy, który będzie korzeniem
- Każdy następny i-ty element tablicy będzie miał co najwyżej dwa następniki o wyrazach odpowiednio: 2*i oraz 2*i+1
- Łatwo stwierdzić, że dla każdego i-tego elementu (oprócz korzenia) numer elementu w tablicy, będącego jego poprzednikiem określa się wzorem: i div 2
Złożoność tego algorytmu to O(nlogn).
| Autor | Język programowania | Komentarz | Otwórz | Pobierz | Ocena |
| Marian | C/C++ | ![]() | ![]() |
![]() ![]() ![]() ![]() / 7 | |
| Marian | C/C++ | C++ | ![]() | ![]() |
![]() ![]() ![]() ![]() / 6 |
| Michał Knasiecki | Delphi/Pascal | Borland Delphi 5 | ![]() | ![]() |
![]() ![]() ![]() ![]() / 5 |
Poprawiony: piątek, 27 maja 2011 08:45





Komentarze