Trefwoorden Algoritmen, Gegevensstructuren, P170, P175, T120
Doelstellingen
De performantie van veel programma's wordt niet alleen bepaald door de snelheid van de computer,
maar soms nog meer door het gebruik van efficiënte algoritmen en gegevensstructuren.
Het doel van dit vak is een overzicht te krijgen van basisalgoritmen, belangrijke gegevensstructuren en
algoritmische methoden, en inzicht te verwerven in hun werking.
Leerinhoud
Uitgebreid overzicht van fundamentele algoritmen en gegevensstructuren, met analyse van hun performantie:
- Performantie van programma's. Asymptotische benaderingen.
- Allerlei methoden om gegevens te rangschikken: insertion sort, Shell sort, heapsort, mergesort,
quicksort, counting sort, radix sort, bucket sort.
- Fundamentele gegevensstructuren: tabellen, lijsten, stapels, wachtrijen, prioriteitswachtrijen,
bomen.
- Belangrijke gegevensstructuren: hashtabellen, binaire zoekbomen, efficiënte binaire zoekbomen,
B-trees.
- Voorstelling van grafen. Basisalgoritmen op grafen.
Begincompetenties Eindcompetenties Informatica I, Informatica II, Discrete wiskunde.
Eindcompetenties Voor allerlei fundamentele programmeerproblemen worden verschillende algoritmen en
gegevensstructuren bestudeerd, hun performantie geanalyseerd, en onderling vergeleken. De
bijbehorende programmeeroefeningen (in de objectgeoriënteerde taal C++) passen deze methoden toe
op allerlei problemen, waarbij de voorspelde efficiëntie vaak vergeleken wordt met deze van de
implementaties. Dit vak resulteert dan ook in de volgende competenties:
- Algemeen Wetenschappelijke Competenties [AWC1]: In staat zijn om kritisch, creatief en
wetenschappelijk te denken en te redeneren.
- Algemeen Technische Competenties [ATC2]: In staat zijn om ingenieurstechnische problemen
wetenschappelijk te analyseren en op te lossen. [ATC3]: In staat zijn om wetenschappelijke en
technische opdrachten zelfstandig uit te voeren. [ATC4]: In staat zijn om onderzoeksmetoden
en -technieken adequaat aan te wenden voor de oplossing van ingenieurstechnische problemen.
- Specifieke Competenties [SC1]: In staat zijn om principes van software-ontwerp toe te passen
met het oog op productie, onderhoud en kwaliteit tegen economisch verantwoorde prijs. [SC2]:
In staat zijn om gevorderde, op practische uitvoering gerichte, opdrachten uit het vakgebied van
de algemene informatica zelfstandig te kunnen uitvoeren. [SC3]: In staat zijn om alle mogelijke
vormen van hedendaagse programmeertechnieken, -omgevingen en -talen in theorie te kunnen
verwerven en die vlot in de praktijk te kunnen toepassen. [SC8]: In staat zijn om
basisalgoritmen en -gegevensstructuren te implementeren en toe te passen. [SC10]: In staat zijn
om kennis en inzicht te verwerven in de domeinen van wetenschappelijk onderzoek in de
moderne informatica.
Leermaterialen Syllabus.
Studiekosten Kosten voor de syllabus.
Studiebegeleiding Docenten zijn ter beschikking voor extra uitleg tijdens de labo's en eventueel op andere ogenblikken na
afspraak.
Onderwijsvormen Theorie: hoorcolleges.
Labo-oefeningen in computerlokaal (programmeren in C++).
Evaluatievorm Theorie: mondeling (47%).
Oefeningen / Labo's in computerlokaal :permanente evaluatie (53%).
De beoordeling en het tot stand komen van de eindquotatie van opleidingsonderdelen gebeurt via het wiskundige gemiddelde volgens de toegekende coëfficiënten.
Indien nochtans op één van de onderscheiden vakken (delen van opleidingsonderdelen) 7 of minder op 20 wordt behaald, kan worden afgeweken van deze rekenkundige berekening van de eindquotatie van het opleidingsonderdeel en kunnen de punten bij consensus worden toegekend. Deze regeling treedt in voege vanaf het academiejaar 2005-2006.
OP-leden Rudy STOOP, JAN CNOPS.
|
|