Pseudocodes: pas x toe op deze oefening zelf pseudocode schrijven
o Of: wijzig x in pseudocode y zodat …
Bewijzen skip
Python: zoals dodona: nen tekst
, 2
1: Zoeken en sorteren
Waarom sorteren?
Effect van sorteren sneller zoeken
Vb woordenboek: probeer maar is een woord te zoeken als ze niet gesorteerd zijn.
Lineair / sequentieel zoeken: algoritme
= elk element afgaan om te zoeken
Tijdscomplexiteit is lineair, dus tijdscomplexiteit van orde n
o T(n) = O(n)
Pseudocode – python
Binair zoeken
Eerst de array sorteren
Dan een element beschouwen (het middelste bv)
o Indien dit element kleiner is dan de gezochte waarde, zoek dan rechts verder
o Indien dit element groter is dan de gezochte waarde, zoek dan links verder
Kan iteratief / recursief
Tijdscomplexiteit is logaritmisch: telkens halveer je de lijst
o T(n) = O(²log(n))
Tijdscomplexiteit manueel: hoeveel wordt dit uitgevoerd ‘rij[m] < zoekItem’
o Bij n = 1 0 keer
o Bij n = 2 1 keer
o Bij n = 4 2 keer
o …
, 3
Pseudocode iteratief – python
Pseudocode recursief – python
, 4
Tijdscomplexiteit (=analyse v/d uitvoeringstijd)
Karakteriseert het gedrag v/d uitvoeringstijd voor grote waarden, typisch gedrag is:
Lineaire functie: T(n) = n
o Invoer verdubbelt uitvoeringstijd verdubbelt
Kwadratische functie: T(n) = n²
o Invoer verdubbelt uitvoeringstijd x 4
Exponentiële functie: T(n) = 2n
o Invoer + 1 uitvoeringstijd x 2
Logaritmische functie: T(n) = log(n)
o Invoer verdubbelt uitvoeringstijd + constante
Hoe bepalen?
Bij zoekalgoritmen wordt dit bepaalt door het aantal vergelijkingen dat worden uitgevoerd. Zie
bv bij binair zoeken hierboven
Sorteren door selectie
Basisidee:
o zoek het grootste element en plaats het achteraan
o Doe zo voort
Complexiteitsanalyse: hoeveel keer wordt a[j] > max uitgevoerd?
o For i n keer
o For j n – 1 keer
o (n(n-1)) / 2
o T(n) = O(n²)
Algemeen:
o 0 + 1 + 2 + … + n-1 = ! n (n-1) / 2 !
pseudocode – python (kan ook omgekeerd: buitenste for van klein nr groot en dan telkens de min
bijhouden etc) + examen: van groot nr klein, met mengen / tussenvoegen / selection
Groot nr klein is gwn < of > switchen
Voordelen van het kopen van samenvattingen bij Stuvia op een rij:
Verzekerd van kwaliteit door reviews
Stuvia-klanten hebben meer dan 700.000 samenvattingen beoordeeld. Zo weet je zeker dat je de beste documenten koopt!
Snel en makkelijk kopen
Je betaalt supersnel en eenmalig met iDeal, creditcard of Stuvia-tegoed voor de samenvatting. Zonder lidmaatschap.
Focus op de essentie
Samenvattingen worden geschreven voor en door anderen. Daarom zijn de samenvattingen altijd betrouwbaar en actueel. Zo kom je snel tot de kern!
Veelgestelde vragen
Wat krijg ik als ik dit document koop?
Je krijgt een PDF, die direct beschikbaar is na je aankoop. Het gekochte document is altijd, overal en oneindig toegankelijk via je profiel.
Tevredenheidsgarantie: hoe werkt dat?
Onze tevredenheidsgarantie zorgt ervoor dat je altijd een studiedocument vindt dat goed bij je past. Je vult een formulier in en onze klantenservice regelt de rest.
Van wie koop ik deze samenvatting?
Stuvia is een marktplaats, je koop dit document dus niet van ons, maar van verkoper easyIT. Stuvia faciliteert de betaling aan de verkoper.
Zit ik meteen vast aan een abonnement?
Nee, je koopt alleen deze samenvatting voor €4,99. Je zit daarna nergens aan vast.