Algoritme basic Flashcards
Wat is een algoritme?
Een algoritme is een volledig ‘stap-voor-stap plan’ om een computationele taak (probleem) op te lossen.
Wat is de kleinste mogelijke stap in een algoritme?
De kleinste mogelijke stap in een algoritme heet een instructie.
Moet een algoritme in een programmeertaal worden geschreven?
Nee, een algoritme is in principe programmeertaal-onafhankelijk en kan wiskundig worden gedefinieerd.
Waarom worden algoritmes als een stap-voor-stap plan gezien?
Omdat ze een reeks duidelijke, opeenvolgende instructies bevatten om een probleem op te lossen.
Waarom wil je de efficiëntie van algoritmes vergelijken?
Om software zo snel mogelijk te maken door het meest efficiënte algoritme voor een bepaalde computationele taak te kiezen.
Waarom zijn runtime-metingen niet altijd betrouwbaar?
Omdat ze afhankelijk zijn van willekeurige en veranderlijke technologische factoren, zoals hardwaregebruik tijdens de meting, het type hardware en de implementatie van de programmeertaal.
Wat is een betrouwbaardere manier om de efficiëntie van een algoritme te analyseren?
Het analyseren van de computationele complexiteit van het algoritme, ook wel algoritmeanalyse of asymptotische analyse genoemd.
Waarop richt algoritmeanalyse zich voornamelijk?
Op de voorspelbare groei van het hulpbronnengebruik van een algoritme, wat volledig afhankelijk is van de invoer.
Welke factoren beïnvloeden NIET de algoritmeanalyse?
Hardware, programmeertaalimplementatie en andere willekeurige technologische factoren worden genegeerd in algoritmeanalyse.
Hoe wordt algoritmeanalyse ook wel genoemd?
Asymptotische analyse, theorie van algoritmen of computationele complexiteitsanalyse.
Maakt het uit welk algoritme je kiest voor kleine 𝑁?
Nee, voor kleine 𝑁 maakt het meestal niet uit welk algoritme je kiest.
Waarom is de keuze van een algoritme belangrijk voor grote 𝑁?
Omdat bij grote 𝑁de efficiëntie en groeisnelheid van het algoritme een grote impact hebben op de prestaties.