Algoritmes om lijsten te verwerken

Op deze pagina, test je of de elementen van een lijst verschillend zijn (dus of er geen duplicaten zijn).
Geen Afbeelding Geen Afbeelding

Stel dat je een lijst met elementen hebt en wilt weten of de elementen van de lijst verschillend zijn (uniek). Dit soort vragen komen vaak voor: een webzoekmachine wil bijvoorbeeld zeker weten dat alle zoekresultaten van elkaar verschillen.

Hier is één algoritme om het probleem op te lossen:

Algoritmen kunnen worden uitgedrukt in natuurlijke taal of in pseudocode, tekst die de stappen beschrijft die een programma moet uitvoeren. Deze tekst die makkelijk voor mensen te begrijpen is kan helpen voor het schrijven van het algoritme in een programmeertaal.

  1. Bouw een predikaat dat het bovenstaande algoritme implementeert.
    Geen Afbeelding
  2. Geen Afbeelding Als je de lengte van de lijst zou verdubbelen, zou dit algoritme dan evenveel tijd kosten? Twee keer zo lang? Meer dan twee keer zo lang?
Alex: Ons predikaat vertelt ons of de elementen van een lijst verschillend zijn. Ik wil nog iets meer informatie hebben.
Yasmine: Wat wil je dan?
Alex: Als er duplicaten in de lijst staan, wil ik graag zien welke getallen het zijn. Op die manier kan ik ze verwijderen.
Bo: Oké, laten we een rapporteur schrijven die de lijst met duplicaten in een lijst rapporteert.
  1. Bouw een rapporteur die alle dubbele elementen in een lijst geeft:
  2. Geen Afbeelding
  1. Bouw een rapporteur, verwijder dubbelen, die een lijst als invoer gebruikt en diezelfde lijst maar zonder dubbele elementen rapporteert.
Terug Volgende