De elektronische studiegids voor het academiejaar 2026 - 2027 is onder voorbehoud.





Inleiding tot Algoritmen en Datastructuren (4865)

Coördinerend verantwoordelijke:Prof. dr. Bart KUIJPERS 
Co-titularis:Prof. dr. Frank NEVEN 
Lid van het onderwijsteam:dr. Arthur JANSEN 
  Juno STEEGMANS 


Studiepunten: 6,0
Studiebelastingsuren: 162
Periode: semester 1 (6sp)

Onderwijstaal: Nederlands
Examencontract: niet mogelijk

2de Examenkans1: Ja
Eindcijfer2: Numeriek
Tolerantie3: Zie plaats in het onderwijsaanbod

Volgtijdelijkheid
Verplichte volgtijdelijkheid op niveau van de opleidingsonderdelen
 
 
  Volgende opleidingsonderdelen dient u ook opgenomen te hebben in uw studieprogramma in een voorgaande onderwijsperiode.
    Imperatief Programmeren (9715) 5.0 stptn  
    Inleiding tot Imperatief Programmeren (9712) 5.0 stptn  
    Problem Solving (9713) 5.0 stptn  
    Programmeren in C m.b.v. Problem Solving (9716) 5.0 stptn  
    Redeneren en abstraheren (9001) 6.0 stptn  
 


Begincompetenties

- De studenten kunnen programmeren in minstens 1 programmeertaal.
- De studenten beschikken over technieken om problemen op te lossen.
- De studenten hebben een wiskundige basiskennis.
- De studenten kunnen eenvoudige wiskundige bewijzen maken.



Inhoud

Inhoudelijk bestaat dit vak uit drie delen.

In een eerste deel worden enkele concepten over inductie-bewijzen herhaald (uit Redeneren en abstraheren)
en worden deze in meer diepte toegepast op invarianten van processen. In het bijzonder worden inductie-bewijzen 
gebruikt om via invarianten de correctheid van programma's aan te tonen.

In een tweede deel wordt een inleiding tot grafen-theorie gegeven. Naast basisconcepten over ongerichte en gerichte grafen
worden coderingen  coderingen van grafen (en grafen als recursief data-type) besproken. 
Verder komen  connectiviteit in grafen; het kleuren van grafen en vlakke grafen aan bod. Er is ook aandacht voor het implementeren van 
bepaalde van deze graaf-concepten.

In een derde deel worden bomen als belangrijke data-structuur in de Informatica bestudeerd.
Naast basis-begrippen over bomen
komen bomen met wortel en binaire bomen aan bod alsook bomen als recursief data-type.
Verder worden effici ̈ente codering van bomen besproken en worden 
spanning trees en tree transversal-methoden theoretisch en algoritmisch bekeken. Er is ook aandacht voor het implementeren van 
bepaalde van deze boom-methoden.



Verplicht studiemateriaal
 

Studiemateriaal in de vorm van slides zal op blackboard ter beschikking worden gesteld.
Ook zal ondersteunend materiaal (teksten) op blackboard gezet  worden.

 

Aanbevolen studiemateriaal
 

L. Lovász , J. Pelikán , K. Vesztergombi, Discrete Mathematics, elementary and beyond.
Undergraduate Texts in Mathematics, Springer, 2003.



Organisatie- / Werkvormen
Organisatievormen  
Hoorcollege  
Project  
Responsiecollege  
Zelfstudieopdracht (ZSO)  


Evaluatie

Semester 1 (6,00sp)

Evaluatievorm
Andere evaluatievorm tijdens onderwijsperiode20 %
Andere:Praktisch werk: (groeps-)project, met een mondelinge toelichting
Schriftelijk examen80 %
Gesloten-boek

Tweede examenkans

Evaluatievorm tweede examenkans verschillend van eerste examenkans
Neen
Toelichting evaluatievorm 100% schriftelijk examen


Eindcompetenties
  EC = eindcompetenties      DC = deelcompetenties      BC = beoordelingscriteria  
bachelor in de informatica
  •  EC 
  • De afgestudeerde bachelor beschikt over een breed referentiekader waardoor hij/zij de eigen kennis en vaardigheden van het vakgebied voortdurend kan actualiseren. 

     
  •  DC 
  • De student heeft grondige kennis over belangrijke deelgebieden van de informatica: programmeertalen en -paradigma''s, computerarchitectuur, human computer interaction, data management, algoritmen en datastructuren, software engineering, computernetwerken, logica, theoretische informatica, besturingssystemen en computer graphics.

     
  •  DC 
  • De student kan denken en handelen vanuit de fundamenten van de informatica.

  •  EC 
  • De afgestudeerde bachelor informatica hecht belang aan de technische kwaliteit van het geleverde eindproduct, werkt nauwgezet en systematisch en kan de hieraan verbonden specificaties correct naar software vertalen.

     
  •  DC 
  • De student kan nauwgezet werken aan opdrachten en projecten.

  •  EC 
  • De afgestudeerde bachelor informatica is zich bewust van informatica als wetenschappelijke discipline, toont een kritische ingesteldheid en kan een standpunt innemen en verdedigen op basis van verworven kennis en inzicht.

     
  •  DC 
  • De student kan informatica als wetenschappelijke discipline situeren.

     
  •  DC 
  • De student kan uitleggen dat er grenzen zijn aan de mogelijkheden om een informaticaprobleem exact op te lossen, waardoor soms beroep moet worden gedaan op benaderingen.

     
  •  DC 
  • De student kan problemen van matige tot redelijke complexiteit op een wetenschappelijke manier onderzoeken en systematisch aanpakken.

  •  EC 
  • De afgestudeerde bachelor informatica kan een probleem uit de praktijk als informaticaprobleem modelleren en analyseren, de eigen creativiteit aanwenden om deelproblemen op te lossen en de gevonden oplossingen te combineren tot een oplossing voor het oorspronkelijke probleem.

     
  •  DC 
  • De student kan de eigen creativiteit aanwenden om een matig complex informaticaprobleem op te lossen en deze oplossing te beschrijven.

     
  •  DC 
  • De student kan een probleem uit de praktijk als informaticaprobleem modelleren.

  •  EC 
  • De afgestudeerde bachelor informatica kan gefundeerd redeneren, abstraheren en formaliseren, gebruik makend van kennis van en inzicht in de wiskundige basis van de informatica.

     
  •  DC 
  • De student kan een correcte logische redenering opbouwen.

     
  •  DC 
  • De student kan basisbegrippen en -eigenschappen uit de wiskunde reproduceren, verklaren en toepassen.

     
  •  DC 
  • De student kan basisbegrippen en -eigenschappen uit de wiskunde toepassen bij het construeren van informatica-oplossingen.

  •  EC 
  • De afgestudeerde bachelor informatica kan het oplossen van problemen algoritmisch benaderen en is vertrouwd met diverse programmeerparadigma's, -technieken en -methoden.

     
  •  DC 
  • De student kan uitleggen wat een algoritme is en een algoritmische aanpak definiëren voor het oplossen van een probleem.

     
  •  DC 
  • De student kan redeneren over de correctheid van een algoritme.

     
  •  DC 
  • De student kan de (tijds)complexiteit van algoritmen en problemen beschrijven en berekenen.

     
  •  DC 
  • De student begrijpt de principes van computationeel denken en kan deze toepassen bij het programmeren.

     
  •  DC 
  • De student kan algoritmen implementeren in een programma.

     
  •  DC 
  • De student kan diverse algoritmen interpreteren en vergelijken op basis van relevante criteria en met deze criteria rekening houden bij het implementeren van algoritmen.

 

Plaats in het onderwijsaanbodTolerantie3
2de bachelorjaar in de informatica J
schakelprogramma informatica J



1   Onderwijs-, examen- en rechtspositieregeling art. 12.2, lid 2.
2   Onderwijs-, examen- en rechtspositieregeling art. 15.1, lid 3.
3   Onderwijs-, examen- en rechtspositieregeling art. 16.9, lid 2.