Junior — Middle
Kunt u de belangrijkste categorieën van algoritmecomplexiteit en hun criteria opsommen?
sobes.tech AI
Antwoord van AI
De belangrijkste categorieën van algoritmische complexiteit beschrijven hoe de uitvoeringstijd of het geheugengebruik toeneemt met de groei van de invoergegevens (n). Hier zijn de hoofdklassen:
- O(1) — constante complexiteit: de tijd hangt niet af van de gegevensgrootte.
- O(log n) — logaritmisch: de tijd groeit evenredig met de logaritme van n (bijvoorbeeld binaire zoekopdracht).
- O(n) — lineair: de tijd is evenredig met de grootte van de invoer.
- O(n log n) — lineair-logaritmisch: vaak gevonden in efficiënte sorteeralgoritmen (bijvoorbeeld quicksort).
- O(n²) — kwadratisch: de tijd groeit evenredig met het kwadraat van de invoergrootte (bijvoorbeeld bubblesort).
- O(2^n) — exponentieel: de tijd verdubbelt bij elke toename van n (bijvoorbeeld het enumereren van alle deelverzamelingen).
- O(n!) — faculteit: een zeer snel groeiende complexiteit (bijvoorbeeld het enumereren van alle permutaties).
Evaluatiecriteria:
- Hoe veranderen tijd/geheugen met de toename van de invoergegevens.
- Worst, gemiddeld en beste geval.
Het begrijpen van deze categorieën helpt bij het kiezen van efficiënte algoritmen voor taken.