Skip to content
Informatica · Klas 5 VWO

Ideeën voor actief leren

Zoekalgoritmen: Lineair en Binair

Actief leren werkt goed voor dit onderwerp omdat leerlingen de verschillen tussen lineair en binair zoeken beter begrijpen door ze daadwerkelijk uit te voeren. Door algoritmen zelf te implementeren en te meten, ervaren ze waarom sortering tijd kost en hoe efficiëntie wordt beïnvloed door de grootte en ordening van de dataset.

SLO Kerndoelen en EindtermenSLO: Voortgezet onderwijs - AlgoritmenSLO: Voortgezet onderwijs - Programmeren
25–50 minDuo's → Hele klas4 activiteiten

Activiteit 01

Denken-Delen-Uitwisselen35 min · Kleine groepjes

Kaartenspel: Lineair vs Binair Zoeken

Deel een stapel genummerde kaarten uit aan groepen. Eerst lineair zoeken naar een doelkaart zonder sorteren, tel de stappen. Sorteer de kaarten en herhaal met binair zoeken, vergelijk resultaten op papier. Sluit af met discussie over efficiëntie.

Vergelijk de efficiëntie van lineair zoeken met binair zoeken in gesorteerde en ongesorteerde lijsten.

FacilitatietipTijdens het kaartenspel geef leerlingen precies 30 seconden per zoekopdracht, zodat ze de tijdsverschillen tussen lineair en binair zoeken direct ervaren.

Waar je op moet lettenGeef leerlingen een lijst met 10 getallen (gesorteerd) en vraag hen om de stappen van binair zoeken uit te schrijven om het getal 7 te vinden. Vraag hen daarnaast om de tijdscomplexiteit van lineair zoeken op een lijst van 100 elementen te schatten.

BegrijpenToepassenAnalyserenZelfbewustzijnRelatievaardigheden
Volledige les genereren

Activiteit 02

Code-uitdaging: Implementeer en Test

Laat leerlingen in Python beide algoritmen programmeren met voorbeeldlijsten. Test op datasets van 10, 100 en 1000 elementen, meet executietijd met time-module. Visualiseer resultaten in een grafiek met matplotlib.

Verklaar waarom binair zoeken niet altijd toepasbaar is en welke voorbereiding nodig is.

FacilitatietipVoor de code-uitdaging: laat leerlingen hun code eerst op papier schrijven voordat ze deze implementeren, om het algoritme zelf eerst te begrijpen.

Waar je op moet lettenStel de vraag: 'Wanneer zou je absoluut geen binair zoekalgoritme kunnen gebruiken, zelfs als je veel data hebt?' Laat leerlingen in kleine groepen brainstormen en hun antwoorden delen, waarbij ze focussen op de voorwaarde van gesorteerde data.

BegrijpenToepassenAnalyserenZelfbewustzijnRelatievaardigheden
Volledige les genereren

Activiteit 03

Denken-Delen-Uitwisselen25 min · Hele klas

Analyse-oefening: Dataset Vergelijking

Geef ongesorteerde en gesorteerde lijsten. Leerlingen kiezen en rechtvaardigen algoritme, simuleren stappen op whiteboard. Groep bespreekt voorbereidingskosten van sorteren.

Analyseer hoe de keuze van een zoekalgoritme de gebruikerservaring van een applicatie beïnvloedt.

FacilitatietipBij de datasetvergelijking: geef twee identieke lijsten, maar sorteer er één vooraf, zodat leerlingen de impact van sortering duidelijk zien.

Waar je op moet lettenToon een korte, ongesorteerde lijst met namen en vraag: 'Hoeveel stappen zou een lineair zoekalgoritme maximaal nodig hebben om 'Jan' te vinden?' Herhaal dit met een gesorteerde lijst en vraag naar de aanpak van binair zoeken, zonder de stappen volledig uit te schrijven.

BegrijpenToepassenAnalyserenZelfbewustzijnRelatievaardigheden
Volledige les genereren

Activiteit 04

App-simulatie: Zoekoptimalisatie

Bouw een eenvoudige zoekinterface in een tool als Replit. Vergelijk lineair en binair op gebruikerinput, toon laadtijd. Leerlingen optimaliseren en presenteren bevindingen.

Vergelijk de efficiëntie van lineair zoeken met binair zoeken in gesorteerde en ongesorteerde lijsten.

FacilitatietipTijdens de app-simulatie: laat leerlingen de zoeksnelheid meten op lijsten van 10, 100 en 1000 elementen om de schaalbaarheid te ervaren.

Waar je op moet lettenGeef leerlingen een lijst met 10 getallen (gesorteerd) en vraag hen om de stappen van binair zoeken uit te schrijven om het getal 7 te vinden. Vraag hen daarnaast om de tijdscomplexiteit van lineair zoeken op een lijst van 100 elementen te schatten.

BegrijpenToepassenAnalyserenZelfbewustzijnRelatievaardigheden
Volledige les genereren

Enkele opmerkingen over deze eenheid onderwijzen

Begin met een concreet voorbeeld, zoals een telefoonboek versus een rommelige lijst met namen. Laat leerlingen eerst handmatig zoeken met beide methoden, zodat ze de logica achter de algoritmen begrijpen voordat ze in code duiken. Vermijd het direct introduceren van Big-O notatie; laat leerlingen zelf patronen ontdekken door metingen te vergelijken. Onderstreep dat algoritmekeuze afhangt van context: soms is eenvoud belangrijker dan snelheid.

Succesvolle leerlingen kunnen de stappen van beide algoritmen uitleggen en de juiste toepassingsvoorwaarden benoemen. Ze herkennen wanneer lineair zoeken praktischer is en wanneer de extra inspanning voor sortering opweegt tegen de winst in zoeksnelheid.


Pas op voor deze misvattingen

  • Tijdens het kaartenspel Lineair vs Binair Zoeken, let op leerlingen die direct binair zoeken toepassen op een ongesorteerde lijst.

    Geef ze een ongesorteerde set kaarten en vraag hen om eerst te sorteren. Laat ze dan de extra stappen tellen die nodig zijn om binair te zoeken, zodat ze de trade-off tussen sorteren en zoeken zien.

  • Tijdens de code-uitdaging Implementeer en Test, let op leerlingen die aannemen dat lineair zoeken niet werkt op gesorteerde lijsten.

    Laat ze hun code uitvoeren op zowel gesorteerde als ongesorteerde lijsten en de resultaten vergelijken. Benadruk dat lineair zoeken altijd werkt, maar dat sorteren de prestatie van lineair niet verbetert.

  • Tijdens de app-simulatie Zoekoptimalisatie, let op leerlingen die denken dat O(log n) altijd betekent dat het algoritme in constante tijd werkt.

    Laat ze grotere lijsten testen en meet de zoektijd. Vraag hen om een grafiek te maken van de zoektijd tegen de lijstgrootte, zodat ze zien dat O(log n) weliswaar efficiënt is, maar nog steeds afhangt van de grootte van de input.


Methodes gebruikt in dit overzicht