Algoritmiek (2)


In de tweede algoritmiek module wordt aandacht besteed aan een belangrijk kwaliteitsaspect van een oplossing voor een algoritmisch probleem: de efficiëntie. Onder efficiëntie van een algoritme wordt verstaan de hoeveelheid werk dat door een algoritme wordt uitgevoerd in relatie tot de invoer waar het algoritme gebruik van maakt. Voor de efficiëntie van algoritmes is een indeling gemaakt in een aantal categorieën. De categorie waar een algoritme toe behoort ("orde van het algoritme") wordt bepaald door wat het effect is van toename van de hoeveelheid invoer op de hoeveelheid werk dat het algoritme moet verrrichten.


Daarnaast presenteren leerlingen een algoritme waar zij zelf onderzoek naar hebben gedaan. Voorbeelden van onderwerpen die hierbij aan bod kunnen komen zijn:

  • Maximale stroom (Ford Fulkerson)
  • Handelsreizigersprobleem
  • Dynamisch programmeren
  • Genetische algoritmen
  • Korste pad (A* algoritme)