Złożoność czasowa i pamięciowa
Lekcja 7 z 9 w kursie Sortowanie przez scalanie – seria DSA w Coddy.
Złożoność czasowa:
- Najlepszy, średni i najgorszy przypadek: O(n log n)
- Tablica jest dzielona na pół około log n razy, a na każdym poziomie scalanie wymaga O(n) pracy. Czas działania nie zależy od kolejności danych wejściowych.
Złożoność pamięciowa:
- O(n)
- W przeciwieństwie do sortowań wykonywanych w miejscu, Merge Sort tworzy nowe tablice podczas scalania, więc potrzebuje dodatkowej pamięci proporcjonalnej do rozmiaru danych wejściowych.
Podsumowanie:
- Merge Sort jest szybki i przewidywalny: O(n log n) w każdym przypadku.
- Jest stabilny, więc równe elementy zachowują swoją kolejność.
- Kompromisem jest dodatkowa pamięć O(n) używana do scalania.
Spróbuj swoich sił
Ta lekcja nie zawiera wyzwania z kodem.
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Sortowanie przez scalanie – seria DSA
2Algorytm
Jak to działa?PseudokodImplementacja (część 1)Implementacja (część 2)Poćwicz samodzielnie: Kompilator C online