Datastructuren en algoritmen
Een programma met tijdcomplexiteit O(n²) doet er 0,5 seconde over bij 1000 gegevens. Hoeveel seconden duurt het ongeveer bij 4000 gegevens?
- A2 seconden
- B8 seconden
- C32 seconden
Antwoord en toelichting tonen
Antwoord: B. 8 seconden
Bij O(n²) is de rekentijd evenredig met het kwadraat van het aantal gegevens. Viermaal zoveel gegevens kost dus 4² = 16 keer zoveel tijd: 0,5 s × 16 = 8 s. 2 seconden zou de uitkomst zijn bij O(n), dat evenredig is met het aantal gegevens, en 32 seconden bij O(n³), dat met de derde macht groeit (4³ = 64 keer). In de praktijk kan het nog trager worden, bijvoorbeeld zodra de gegevens niet meer in de cache passen.