Oefeningen voor de oefeningenles. Oefening 1

Save this PDF as:
 WORD  PNG  TXT  JPG

Maat: px
Weergave met pagina beginnen:

Download "Oefeningen voor de oefeningenles. Oefening 1"

Transcriptie

1 Oefeningen voor de oefeningenles Oefening 1 Gegeven een arbitraire binaire zoekboom T met n toppen en een (andere of gelijke) binaire zoekboom T die ook n sleutels bevat. Beschrijf een algoritme dat in lineaire tijd (dus tijd O(n)) de boom T zo verandert (door veranderen van de kinderen), dat T isomorf is met T (maar nog altijd een zoekboom met dezelfde sleutels als vroeger is). Definiëer eerst wat isomorf precies betekent. cursus Discrete Wiskunde. Denk aan de Beschrijf het algoritme. Tip: bepaal eerst paren (x, y) met x T, y T van toppen die gelijke posities in de verschillende bomen moeten hebben. Maar er zijn ook andere mogelijkheden om zo n algoritme te ontwerpen... Toon aan, dat het algoritme juist is dus dat de boom die gebouwd wordt echt isomorf met T is.

2 Oefening 2 Verwijder sleutel 6 uit deze AVL-boom:

3 Oefening 3 In DA1 hebben jullie de hersteloperaties voor AVL bomen geformuleerd door middel van enkelvoudige rotaties en dubbele rotaties. In de les hebben jullie gezien dat je deelbomen kan vervangen door andere deelbomen met dezelfde sleutels. Herschrijf de regels voor het herstellen van AVL-bomen door de deelboomvervangmethode te gebruiken.

4 Oefening 4 Stel dat voor grote h het minimum aantal toppen t(h) van een boom met hoogte h voldoet aan t(h) 4 h+2 /8. Toon aan dat de boom logaritmische diepte heeft (dus h is O(log t) met t het aantal toppen) en bepaal de constanten.

5 Oefeningen voor de oefeningenles Oefening 5 Als je een element uit een splayboom verwijdert, wordt de ordening ook verstoord. Sleutels worden in de richting van de bladeren geschoven die misschien vrij vaak opgezocht worden. Om sleutels die dicht bij de wortel zitten daar te houden, lijkt het verstandig b.v. als je een blad verwijdert de boom helemaal niet te veranderen. Toon aan dat als je op deze manier sleutels verwijdert er reeksen van bewerkingen bestaan zodat n bewerkingen op een initiëel lege splayboom gemiddeld O(n) stappen per bewerking vragen (de hele reeks dus O(n 2 )).

6 Oefening 6 1. Geef een algoritme voor het bepalen van de sleutel in een gegeven binaire zoekboom die het dichtst bij een gegeven sleutelwaarde x ligt (dus x zelf als de sleutel erin zit). Als de zoekboom een AVL-boom is, kan je dan garanderen dat je de sleutel in tijd O(logn) kan vinden? Toon aan dat jouw antwoord juist is. 2. Geef een algoritme voor het bepalen van alle sleutels in een gegeven binaire zoekboom die hoogstens d (met d > 0) van een gegeven sleutelwaarde x verschillen. Als de zoekboom een AVL-boom is, kan je dan garanderen dat je de sleutels in tijd O(logn) kan vinden? Toon aan dat jouw antwoord juist is.

7 Oefening 7 Voeg de sleutels 10,20,30,25,40,5,2 in deze volgorde toe aan een 2-3 boom.

8 Oefening 8 Stel dat een algoritme A gegeven is. De functie f(n) geeft de grootste tijd die het algoritme vraagt als hij op een input van n bytes wordt toegepast. Je wil tonen, dat f(n) niet Θ(n 2 ) is. Wat moet je precies tonen? De bedoeling is niet, het echt te tonen (dat is ook niet mogelijk, omdat je noch f() noch A kent), maar gewoon van de definitie van Θ(n 2 ) te vertrekken en dan met de middelen die jullie in de logica les hebben geleerd uit te vissen wat je moet tonen. Geef de formule die het resultaat van deze berekeningen is en geef ook uitleg!

9 Oefeningen voor de oefeningenles Oefening 8 Deze oefening maakte deel uit van het examen van het vorige jaar. Als jullie dus helemaal alleen proberen deze oefening op te lossen krijgen jullie al een gevoel ervoor hoe het examen gaat zijn, hoeveel tijd jullie van zo n oefening nodig hebben, etc. a.) Wat is in het slechtste geval de diepte van een 2-3-boom met n sleutels en wat is de diepte in het beste geval? Wat zijn de beste en slechtste gevallen? (Geen bewijs vereist.) b.) Hoeveel vergelijkingen van sleutels zijn er in het beste geval nodig om een nieuwe sleutel aan een 2-3-boom met n sleutels toe te voegen? Wat is het beste geval? (Geen bewijs vereist.) c.) Schrijf voor elk van de drie bomen of hij een 2-3-boom is en in het geval van niet waarom niet. (1) (2) (3) d.) Voeg de sleutel 24 toe aan de volgende 2-3-boom. Toon voldoende tussenstappen om te zien wat er gebeurt, maar voor de tussenstappen moet je niet elke keer de hele boom tekenen

10 Oefening 9 In het boek is er jammer genoeg een tikfout: Er wordt geeist dat voor de sleutels in de linkerdeelboom geldt dat ze kleiner dan de eerste sleutel zijn en de sleutels in de middenste deelboom groter dan of gelijk aan de kleinste sleutel en kleiner dan de tweede sleutel zijn. De sleutels in de rechterdeelboom moeten groter dan of gelijk aan de tweede sleutel zijn. De andere voorwaarden zijn dezelfden. Als wij alleen maar sleutels willen opslaan die verschillend zijn, is er geen verschil met de definitie uit de les. Maar is de definitie in het boek ook goed als je verschillende kopieën van dezelfde sleutel wil opslaan? Wat zou er veranderen? Zou deze definitie problemen veroorzaken? Zouden de bewerkingen die in de les werden getoond nog mogelijk zijn? Indien niet: Waar loopt er iets fout? Anders: Zouden ze nog even efficiënt zijn? Als je in de definitie nooit alleen maar kleiner of groter eist, maar altijd kleiner dan of gelijk aan of groter dan of gelijk aan zou je dan ook verschillende kopieën van dezelfde sleutel kunnen opslaan? Werken de in de les gezien bewerkingen nog?

11 Oefening 10 Voeg de sleutels 10,5,2,20,1,7 in deze volgorde toe aan een roodzwart-boom. Toon voldoende tussenstappen om te zien wat er gebeurt.

12 Oefening 11 In de les hebben wij een lemma gezien dat een benedengrens geeft voor het aantal toppen in een rood-zwart-boom als er b zwarte toppen op een pad van de wortel naar een blad zitten. Kan je ook een benedengrens voor het aantal toppen bewijzen als er r rode toppen op een pad van de wortel naar een blad in een rood-zwart-boom zitten? Kan je een bovengrens voor het aantal toppen bewijzen als er r rode toppen op een pad van de wortel naar een blad naar een blad in een rood-zwart-boom zitten?

13 Oefeningen voor de oefeningenles Oefening 12 De bedoeling van deze eerste oefening is om te zien dat de technieken die wij geleerd hebben wel intuïtief zijn. Het gaat over een onderwerp dat jullie al kennen en waar jullie ook de complexiteit reeds van kennen. Door het toepassen van de nieuwe methoden op een bekend geval zien jullie hopelijk gemakkelijker wat het idee achter deze technieken is. Gegeven zijn twee enkelvoudige gelinkte gesorteerde lijsten met elk n objecten. Dus: je kent de twee eerste objecten en elk object bevat een referentie naar zijn opvolger. De tweede lijst moet gemerged worden in de eerste lijst zodat er op het einde een enkele gesorteerde lijst is. Dat gebeurt door een plaats-operatie: eerst word de plaats in de eerste lijst gezocht, waar het eerste element van de tweede lijst geplaatst moet worden en dan wordt het daar geplaatst. Als je de plaats voor het i-de element hebt gevonden, vertrek je van daar en zoek je de plaats voor het (i+1)-de element. Toon aan dat het plaatsen van één element in het slechtste geval O(n) stappen kan vragen (wat tot een complexiteit van O(n 2 ) aanleiding zou geven). Is er een vast getal k zodat er als je twee lijsten mergt ten hoogste k plaats-operaties kunnen zijn die tijd Θ(n) vragen? indien ja: bepaal k anders: toon aan dat k niet bestaat Toon d.m.v. de aggregaatmethode aan dat de geamortiseerde complexiteit van alle n invoegbewerkingen gemiddeld O(1) per bewerking is. Toon d.m.v. de potentiaalmethode aan dat de geamortiseerde complexiteit van alle n invoegbewerkingen samen O(n) is.

14 Oefening 13 Een bekende manier om met een array te werken is dat je elke keer dat je meer elementen wil toevoegen dan in de array passen dubbel zo veel ruimte voor de array alloceert en de oude array kopiëert. Stel nu, dat je zo weinig mogelijk geheugen wil gebruiken en dus niet altijd zoveel extra geheugen wil alloceren. Je begint met 1000 elementen en hebt de mogelijkheid ofwel elke keer en array met 500 elementen meer te alloceren ofwel elke keer een array met 20% meer ruimte dan de vorige. Wat is beter? Bereken de geamortiseerde tijd voor een reeks van m bewerkingen op een initiëel lege array. Je kan zelf kiezen welke methode je wil toepassen.

15 Oefening 14 Als je in een zoekboom een sleutel zoekt, moet je kijken of de sleutel in een top gelijk, kleiner of groter is aan de sleutel die je zoekt. Daarvoor heb je 2 vergelijkingen nodig (natuurlijk niet noodzakelijk 2 vergelijkingen van de sleutels...). Wij kijken nu alleen naar het toevoegen en zoeken. Stel nu dat je per top maar één vergelijking wil doen en elke sleutel maar één keer in de boom mag zitten. Dan kan je alle sleutels in bladeren plaatsen en de toppen met twee kinderen helpen je gewoon het juiste blad te vinden. Sleutels die gelijk zijn aan de waarde van een binnentop plaatsen wij altijd in zijn grotertak. Je voegt een top op dezelfde manier toe als gewoonlijk. Maar als je het als een kind van een blad hebt toegevoegd (en dus de ouder achteraf geen blad meer is) creëer je als de nieuwe sleutel kleiner is dan de ouder twee kinderen van de ouder en plaats je een kopie van de ouder in het groterkind en de nieuwe sleutel in het kleinerkind. Als de nieuwe sleutel groter is, creëer je één nieuw kind van de ouder waar je de nieuwe sleutel plaatst en dan nog twee kinderen van deze nieuwe top, waar je één keer een kopie van de sleutel in de ouder en één keer een kopie van de nieuwe sleutel plaatst (natuurlijk in de juiste volgorde). Op deze manier kan je een sleutel in een blad altijd vinden door in het grotertak te zoeken als hij gelijk is aan de sleutel in een binnentop. Toon aan dat als n het aantal sleutels in de bladeren is dezelfde sleutel O(n) keer in de boom kan zitten ook als hij maar één keer in een blad zit. Toon aan dat het gemiddelde aantal keren dat een sleutel in de boom zit O(1) is. Gebruik één keer de aggregaat en één keer de accounting methode. Bespaart deze nieuwe datastructuur altijd vergelijkingen? Hier gaat het niet over het tellen van stappen maar elementen, maar toch kunnen de methoden gemakkelijk toegepast worden.

16 Inderdaad kan je het tweede deel van de oefening op een andere manier gemakkelijker oplossen, maar de bedoeling is vooral de methoden uit de les te oefenen en dat natuurlijk niet op voorbeelden die te moeilijk zijn...

17 Oefeningen voor de oefeningenles Oefening 13 werd de vorige keer niet opgelost. opgelost worden. Zij moet eerst Oefening 15 Bouw een leftist heap L 1 door de elementen 19, 13, 8, 11, 1, 6, 7 (in deze volgorde) toe te voegen aan een initieel lege heap. Bouw vervolgens een tweede leftist heap L 2 door de elementen 5, 22, 8, 4, 14, 17, 16, 9, 11, 18, 12 (in deze volgorde) toe te voegen aan een initieel lege heap. Merge vervolgens L 1 en L 2 en verwijder tenslotte de wortel.

18 Oefening 16 In de les hebben wij gezien dat een reeks van n toevoegbewerkingen op een initieel lege binomiale heap geamortiseerd tijd O(n) vraagt. Geldt dat ook voor leftist heaps? Indien niet: Geef een goede bovengrens voor het aantal stappen (b.v. O(n log n) of O(n 2 )). Omdat de stappen verschillend zijn voor leftist heaps en binomiale heaps tellen wij nu gewoon het aantal vergelijkingen van sleutels. Kan je dan voor elk n een reeks r 1 van n sleutels aangeven zo dat als die in deze volgorde aan een initieel lege heap worden toegevoegd een leftist heap minder vergelijkingen vraagt dan een binomiale heap en een dergelijke reeks r 2 van sleutels waarvoor een binomiale heap minder vergelijkingen vraagt?

19 Oefening 17 Bouw een skew heap L 1 door de elementen 19, 13, 8, 11, 1, 6, 7 (in deze volgorde) toe te voegen aan een initieel lege heap. Bouw vervolgens een tweede skew heap L 2 door de elementen 5, 22, 8, 4, 14, 17, 16, 9, 11, 18, 12 (in deze volgorde) toe te voegen aan een initieel lege heap. Merge vervolgens L 1 en L 2 en verwijder tenslotte de wortel. Het zijn dezelfde sleutels die je voor de leftist heap hebt gebruikt.

20 Oefening 18 Bestaat er voor elke leftist heap H een reeks van alleen toevoegbewerkingen die toegepast op een initieel lege heap als resultaat H opleveren? Hier gaat het alleen maar om de structuur van H. Exacter zou zijn:... die als resultaat een heap opleveren die isomorf is met H.

21 Oefeningen voor de oefeningenles Oefening 19 In de volgende figuur zijn de kosten van de bogen die met punten zijn getekend altijd 5. De kosten van de dikke lijnen zijn 1 als er niet expliciet iets anders staat. a 3 b c 2 2 d v e 2 g w 3 f De vraag is of er een rondreis met kost ten hoogste 12 bestaat. Bepaal de oplossingenboom. Start één keer met v en één keer met w. Welke bounding criteria pas je toe?

22 Oefening 20 Kleuren van grafen Een consistente kleuring van de toppen van een graaf is een toekenning van een kleur aan elke top zodanig dat twee toppen die door een boog verbonden zijn, een verschillende kleur hebben. Geef een backtracking algoritme dat voor een graaf met toppen 1,..., n controleert of een gegeven graaf met twee kleuren kan gekleurd worden. Let op de volgorde waarop je de toppen kleurt. Wat is de complexiteit in het slechtste geval als je de toppen in volgorde 1,..., n kleurt en wat is de complexiteit voor de volgorde die jij hebt gekozen? Doe hetzelfde nog eens voor drie kleuren.

23 Oefening 21 Dit is een vraag uit een examen DA2. Ik stel voor dat iedereen alleen probeert deze oefening op te lossen om een indruk te krijgen hoe goed hij deze oefening in het examen opgelost zou hebben. Als het niet zou lukken: Niet aan jezelf twijfelen het was wel één van de moeilijkere oefeningen er gaan ook gemakkelijke oefeningen zelfs drilloefeneingen zijn. Een probleem vertalen: Een vertegenwoordiger moet n steden bezoeken en zoekt de snelste manier om dat te doen en terug te komen. Voor elk paar a, b van steden is de tijd bekend die nodig is om van a naar b te rijden zonder door één van de andere steden te gaan. Als het belangrijk is dat hij elke stad precies één keer bezoekt (bijvoorbeeld als hij echt slechte produkten verkoopt... ) dan is dit probleem equivalent met het handelsreizigersprobleem. Maar normaal is dat voor hem niet belangrijk hij zoekt gewoon de kortste rondreis waarin elke stad tenminste één keer wordt bezocht. Vertaal dit probleem naar het normale TSP. Schets een polynomiaal algoritme dat als resultaat een input voor het normale TSP heeft, zodat als wij de lengte van een kortste Hamiltoniaanse cykel in dit TSP kennen, wij ook de lengte van een kortste rondreis voor de vertegenwoordiger kennen. Toon aan dat jouw algoritme aan de eisen voldoet.

24 Oefening 22 In het schaakspel kan een paard (of knight) op rij r en kolom k bewegen naar rij 1 r b en kolom 1 k b (met b b de grootte van het schaakbord), op voorwaarde dat ofwel ofwel r r = 2 en k k = 1 r r = 1 en k k = 2. Een knight s tour is een sequentie van zetten die elke plaats op het schaakbord precies eenmaal aandoet vooraleer terug te keren naar het startpunt. De volgende figuur geeft een knight s tour voor een 8 8 schaakbord. Een knight s tour op een 8 8 schaakbord 1. Geef een backtracking algoritme dat een knight s tour bepaalt. 2. Werk een deel van de oplossingenboom voor een 4 4 schaakbord voor jouw algorime uit. Kies een deel dat voldoende groot is om te tonen hoe jouw algoritme werkt.

25 3. Bewijs dat een knight s tour voor een 4 4 schaakbord niet bestaat. Helpt dit bewijs het probleem beter te verstaan en een beter algoritme te ontwikkelen? Misschien een volgorde waarop je de volgende zet kiest of een bounding criterium? Zijn er toppen in jouw uitgewerkte deelboom waar je zou hebben kunnen snoeien? 4. Vertaal dit probleem naar een TSP probleem. Dus: Voor een gegeven getal b definieer eerst een complete graaf G en gewichten op de bogen van G. Bepaal dan een getal x zodat voor G een rondreis bestaat met kost ten hoogste x als en slechts als er een knights tour voor een b b schaakbord bestaat. Het berekenen van G en x moet een computer in tijd O(b 4 ) kunnen doen. 5. Bewijs dat, als b oneven is, een knight s tour voor een b b schaakbord niet bestaat. 6. Bepaal een knight s tour voor een 6 6 schaakbord.

26 Oefeningen voor de oefeningenles Oefening 23 In de les hebben wij gezien hoe je het TSP kan vertalen naar een lineair probleem en hoe je verschillende eisen in een vorm Ax b kan formuleren waarbij A een matrix is, x de vector van bogen en b een getal. Natuurlijk mag behalve in het geval van maar 3 steden een oplossing nooit driehoeken bevatten. Formuleer deze eis door een reeks van eisen in de vorm Ax b.

27 Oefening 24 Vertaal het volgende probleem naar een gekend probleem. Geef enkel aan hoe het probleem kan vertaald worden; het is niet nodig ook het algoritme uit te werken. Veronderstel dat n taken T j (j = 1,..., n) moeten uitgevoerd worden op een machine, waarop slechts één taak tegelijk kan uitgevoerd worden. Veronderstel dat de taken in willekeurige volgorde kunnen uitgevoerd worden. De machine moet in een bepaalde toestand S j gebracht worden om taak j te kunnen uitvoeren, ze is in toestand S 0 bij het begin van de reeks taken, en ze moet terug in toestand S 0 gebracht worden bij het einde van de reeks taken; een dergelijke toestand kan bijvoorbeeld beschreven worden door temperatuur, druk, of omwentelingen per minuut. Gegeven is de tijd w ij, die nodig is om de machine om te schakelen van toestand S i naar toestand S j, voor elke i en j; we veronderstellen dat w ij = w ji. Voor elke taak T j is ook de tijd c j gegeven die nodig is om de taak uit te voeren wanneer de machine zich reeds in toestand S j bevindt. Het is de bedoeling een volgorde voor de taken te bepalen zodanig dat de reeks in zo weinig mogelijk tijd kan afgewerkt worden.

28 Oefening 25 Werk de spelboom uit voor de volgende beginsituatie van drie-opeen-rij. X X O X O O Maar: De regels zijn een klein beetje gewijzigd: Je kan niet alleen maar winnen en verliezen maar de winst/het verlies is het aantal stenen die na de laatste zet op het bord aanwezig zijn. Dus hoe later je wint hoe meer je wint. Wat is de waarde van dit spel?

29 Oefeningen voor de oefeningenles Oefening 26 Een knikkerspelletje Beschouw het volgende spelletje : Twee spelers zitten aan een tafel met daarop 6 knikkers. Elke speler neemt om beurt één, twee of drie knikkers weg. De speler die de laatste knikker wegneemt, verliest het spel. 1. Teken de volledige spelboom voor dit spel. 2. Onderstel dat de boom systematisch afgelopen wordt met de minimax strategie, waarbij toppen met de configuraties met het kleinste aantal knikkers eerst doorzocht worden. Probeer het eindresultaat te bekomen door zo weinig mogelijk takken uit te werken (d.i. snoeien). Welke toppen worden dan weggesnoeid? 3. Wie wint het spel als beide spelers optimaal spelen?

30 Oefening 27 α-β-snoeien Oefening 10.2 in het boek: Gegeven is een hypothetische spelboom, waarbij in elk blad de waarde van de evaluatiefunctie voor die situatie ingevuld is. Bepaal de waarde van de wortel van de boom, en probeer daarbij zoveel mogelijk te snoeien, m.a.w. probeer zo weinig mogelijk interne toppen ook effectief te evalueren. Merk op: van bepaalde bladeren is de waarde irrelevant! max max min min max max min min max max

31 Oefening 28 Nog een oefening uit een examen. Als jullie het ook deze keer zelfstandig oplossen en kijken hoeveel tijd jullie ervoor nodig hebben, kunnen jullie dat al veel beter inschatten als er echt examen is. Een wisselgeldspel Gegeven een bedrag b van eurocent en een getal m dat het maximale aantal zetten bepaalt. De regels zijn als volgt: In het begin ligt 0 cent op tafel. Speler X begint. Als een speler aan de beurt is en er ligt al een bedrag van t < b cent op tafel, moet hij er precies één munt bijleggen zodanig dat nog steeds ten hoogste een bedrag van b op tafel ligt (1 euro telt natuurlijk als 100 cent, etc). Het spel is gedaan als er b cent op tafel ligt. Als er op dit moment ten hoogste m munten liggen, mag speler X het bedrag houden, anders speler Y. De winst is natuurlijk, wat de andere speler op tafel legde. Stel nu dat alleen maar munten van 1, 2 en 10 cent toegelaten zijn (anders wordt de vertakking gewoon te groot om het op papier te doen). Wat is de waarde van het spel met b = 15 en m = 5. //Misschien kan je hier ook branch and bound en dynamisch programmeren toepassen //om niet de hele spelboom te moeten uitwerken...

32 Oefeningen voor de oefeningenles Oefening 29 Gebruik de Miller-Rabin test om te testen of 70 een priemgetal is. Werk in 3 groepen één groep neemt als basis 11, één groep 12 en één groep 13.

33 Oefening 30 De volgende oefening lijkt sterk op het voorbeeld in de les, maar er zijn ook sommige belangrijke verschillen die een een beetje verschillende argumentatie vragen: Gegeven een verzameling V en V 1,..., V k V zodat voor 1 i k geldt V i r 3 en k 3 r 1 /2 r+1. Gezocht is een kleuring met 3 kleuren zodat in elke verzameling elementen met alle drie kleuren aanwezig zijn. Let op: Dat is iets anders dan niet alleen maar één kleur aanwezig is. Beschrijf een Las Vegas algoritme dat in lineaire tijd met kans tenminste 1/2 zo n kleuring vindt en toon aan dat jouw algoritme aan de eisen voldoet.

34 Oefening 31 De binomiaalcoëfficiënten C(n, k) worden recursief als volgt gedefinieerd, voor n = 0, 1, 2,...: C(n, 0) = 1, C(n, n) = 1, C(n, k) = C(n 1, k) + C(n 1, k 1), voor 0 < k < n 1. Geef een recursief algoritme (in pseudocode) dat, voor een gegeven waarde van n en k, de binomiaalcoëfficiënt C(n, k) berekent. Leg uit waarom dit recursieve algoritme inefficiënt is. 2. Geef een algoritme met dynamisch programmeren (in pseudocode) dat, voor een gegeven waarde van n en k, de binomiaalcoëfficiënt C(n, k) berekent. Bespreek de tijds- en geheugencomplexiteit van dit algoritme met dynamisch programmeren.

35 Oefeningen voor de oefeningenles Oefening 32 Een gretig algoritme voor het (gewone) TSP kan bijvoorbeeld zo werken: Begin met de goedkoopste boog en maak het pad altijd langer maar kies altijd de goedkoopste boog, die het pad verlengt. Toon aan dat dit algoritme arbitrair slechte resultaten kan opleveren. Precies: Toon aan dat er voor elk getal k TSP s zijn (dus gewogen complete grafen waarvoor een goedkoopste hamiltoniaanse cykel wordt gezocht), zodat dit algoritme Hamiltoniaanse cykels berekent die tenminste k keer duurder zijn, dan de goedkoopste.

36 Oefening 33 Dit is een oefening uit een examen dus probeer het best ze zelfstandig op te lossen om te zien hoeveel tijd je nodig hebt. Geef een voorbeeld waar first-fit dalend beter presteert dan best-fit dalend. Geef een voorbeeld waar best-fit dalend beter presteert dan first-fit dalend. Geef een oneindige reeks van voorbeelden (dus een reeks die afhankelijk is van bijvoorbeeld k) waar best-fit dalend en firstfit dalend allebei niet het optimum vinden.

37 Oefening 34 Vertaal het volgende probleem naar een gekend probleem. Geef enkel aan hoe het probleem kan vertaald worden; het is niet nodig ook het algoritme uit te werken. In een schrijnwerkerij moet een reeks planken van gegeven lengten x 1,..., x n gezaagd worden uit stukken hout van een zekere vaste lengte x (in mm). Dit moet gebeuren met zo weinig mogelijk verspilling van hout en je kan stellen dat elke snede 2 mm breed is.

38 Oefening 35 Beschrijf een branch and bound algoritme dat voor een gegeven reeks van gewichten de optimale oplossing van het inpakprobleem vindt. Wat is de complexiteit?

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II Tweede kandidatuur Informatica Academiejaar 2004 2005, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. 1. Binomiale

Nadere informatie

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II Tweede bachelor Informatica Academiejaar 2006 2007, tweede zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. 1. Verzamelingen:

Nadere informatie

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II Tweede bachelor Informatica Academiejaar 2009 2010, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele

Nadere informatie

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II Tweede bachelor Informatica Academiejaar 2008 2009, tweede zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees elke

Nadere informatie

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II Tweede bachelor Informatica Academiejaar 2008 2009, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees elke

Nadere informatie

Twaalfde college complexiteit. 11 mei 2012. Overzicht, MST

Twaalfde college complexiteit. 11 mei 2012. Overzicht, MST College 12 Twaalfde college complexiteit 11 mei 2012 Overzicht, MST 1 Agenda voor vandaag Minimum Opspannende Boom (minimum spanning tree) als voorbeeld van greedy algoritmen Overzicht: wat voor technieken

Nadere informatie

TW2020 Optimalisering

TW2020 Optimalisering TW2020 Optimalisering Hoorcollege 11 Leo van Iersel Technische Universiteit Delft 25 november 2015 Leo van Iersel (TUD) TW2020 Optimalisering 25 november 2015 1 / 28 Vandaag Vraag Voor welke problemen

Nadere informatie

Examen Algoritmen en Datastructuren III

Examen Algoritmen en Datastructuren III Derde bachelor Informatica Academiejaar 2006 2007, tweede zittijd Examen Algoritmen en Datastructuren III Naam :.............................................................................. 1. (2 pt)

Nadere informatie

Tentamen Discrete Wiskunde 1 10 april 2012, 14:00 17:00 uur

Tentamen Discrete Wiskunde 1 10 april 2012, 14:00 17:00 uur Tentamen Discrete Wiskunde 0 april 0, :00 7:00 uur Schrijf je naam op ieder blad dat je inlevert. Onderbouw je antwoorden, met een goede argumentatie zijn ook punten te verdienen. Veel succes! Opgave.

Nadere informatie

Discrete Structuren. Piter Dykstra Sietse Achterop Opleidingsinstituut Informatica en Cognitie

Discrete Structuren. Piter Dykstra Sietse Achterop Opleidingsinstituut Informatica en Cognitie Discrete Structuren Piter Dykstra Sietse Achterop Opleidingsinstituut Informatica en Cognitie www.math.rug.nl/~piter piter@math.rug.nl 3 maart 2008 GRAFEN & BOMEN Paragrafen 6.1-6.4 Discrete Structuren

Nadere informatie

Discrete Structuren. Piter Dykstra Opleidingsinstituut Informatica en Cognitie

Discrete Structuren. Piter Dykstra Opleidingsinstituut Informatica en Cognitie Discrete Structuren Piter Dykstra Opleidingsinstituut Informatica en Cognitie www.math.rug.nl/~piter piter@math.rug.nl 23 februari 2009 GRAFEN & BOMEN Paragrafen 6.1-6.4 Discrete Structuren Week 3 en 4:

Nadere informatie

8. Complexiteit van algoritmen:

8. Complexiteit van algoritmen: 8. Complexiteit van algoritmen: Voorbeeld: Een gevaarlijk spel 1 Spelboom voor het wespenspel 2 8.1 Complexiteit 4 8.2 NP-problemen 6 8.3 De oplossing 7 8.4 Een vuistregel 8 In dit hoofdstuk wordt het

Nadere informatie

Tiende college algoritmiek. 13/21 april Gretige Algoritmen Algoritme van Dijkstra

Tiende college algoritmiek. 13/21 april Gretige Algoritmen Algoritme van Dijkstra Algoritmiek 017/Gretige Algoritmen Tiende college algoritmiek 13/1 april 017 Gretige Algoritmen Algoritme van Dijkstra 1 Algoritmiek 017/Gretige Algoritmen Muntenprobleem Gegeven onbeperkt veel munten

Nadere informatie

TW2020 Optimalisering

TW2020 Optimalisering TW2020 Optimalisering Hoorcollege 8 Leo van Iersel Technische Universiteit Delft 28 oktober 2015 Leo van Iersel (TUD) TW2020 Optimalisering 28 oktober 2015 1 / 25 Definitie Een boom is een samenhangende

Nadere informatie

Tiende college algoritmiek. 26 april Gretige algoritmen

Tiende college algoritmiek. 26 april Gretige algoritmen Algoritmiek 01/10 College 10 Tiende college algoritmiek april 01 Gretige algoritmen 1 Algoritmiek 01/10 Muntenprobleem Gegeven onbeperkt veel munten van d 1,d,...d m eurocent, en een te betalen bedrag

Nadere informatie

TW2020 Optimalisering

TW2020 Optimalisering TW2020 Optimalisering Hoorcollege 8 Leo van Iersel Technische Universiteit Delft 2 november 2016 Leo van Iersel (TUD) TW2020 Optimalisering 2 november 2016 1 / 28 Minimum Opspannende Boom (Minimum Spanning

Nadere informatie

FLIPIT 5. (a i,j + a j,i )d i d j = d j + 0 = e d. i<j

FLIPIT 5. (a i,j + a j,i )d i d j = d j + 0 = e d. i<j FLIPIT JAAP TOP Een netwerk bestaat uit een eindig aantal punten, waarbij voor elk tweetal ervan gegeven is of er wel of niet een verbinding is tussen deze twee. De punten waarmee een gegeven punt van

Nadere informatie

The knight s tour. Het paard in schaken beweegt als volgt: Steeds 1 vakje in een richting en 2 in een andere richting, of omgekeerd.

The knight s tour. Het paard in schaken beweegt als volgt: Steeds 1 vakje in een richting en 2 in een andere richting, of omgekeerd. The knight s tour In het Engels heet een paard uit schaken een Knight (Ridder). In het begin zaten er namelijk ridders op de paarden. (link wiki) Stel, je bent een paard uit het schaakspel en je staat

Nadere informatie

Vijfde college complexiteit. 21 februari Selectie Toernooimethode Adversary argument

Vijfde college complexiteit. 21 februari Selectie Toernooimethode Adversary argument Complexiteit 2017/05 College 5 Vijfde college complexiteit 21 februari 2017 Selectie Toernooimethode Adversary argument 1 Complexiteit 2017/05 Opgave 28 Gegeven twee oplopend gesorteerde even lange rijen

Nadere informatie

Hoofdstuk 13: Integer Lineair Programmeren

Hoofdstuk 13: Integer Lineair Programmeren Hoofdstuk 13: Integer Lineair Programmeren Vandaag: Wat is Integer Lineair Programmeren (ILP)? Relatie tussen ILP en LP Voorbeeld 1: Minimum Spanning Tree (MST) Voorbeeld 2: Travelling Salesman Problem

Nadere informatie

V = {a, b, c, d, e} Computernetwerken: de knopen zijn machines in het netwerk, de kanten zijn communicatiekanalen.

V = {a, b, c, d, e} Computernetwerken: de knopen zijn machines in het netwerk, de kanten zijn communicatiekanalen. WIS14 1 14 Grafen 14.1 Grafen Gerichte grafen Voor een verzameling V is een binaire relatie op V een verzameling geordende paren van elementen van V. Voorbeeld: een binaire relatie op N is de relatie KleinerDan,

Nadere informatie

9. Strategieën en oplossingsmethoden

9. Strategieën en oplossingsmethoden 9. Strategieën en oplossingsmethoden In dit hoofdstuk wordt nog even terug gekeken naar alle voorgaande hoofdstukken. We herhalen globaal de structuren en geven enkele richtlijnen voor het ontwerpen van

Nadere informatie

2WO12: Optimalisering in Netwerken

2WO12: Optimalisering in Netwerken 2WO12: Optimalisering in Netwerken Leo van Iersel Technische Universiteit Eindhoven (TU/E) en Centrum Wiskunde & Informatica (CWI) 27 februari 2014 http://homepages.cwi.nl/~iersel/2wo12/ l.j.j.v.iersel@gmail.com

Nadere informatie

Informatica. 2 e graad 2 e jaar. De Mol W.

Informatica. 2 e graad 2 e jaar. De Mol W. Informatica 2 e graad 2 e jaar De Mol W. Inhoudstafel Inhoudstafel... 2 Algoritmes... 3 1.1 Algemeen... 3 1.2 Het algoritme... 4 1.3 Opstellen van het algoritme... 5 1.4 Stapsgewijs verfijnen van het algoritme...

Nadere informatie

Universiteit Utrecht Betafaculteit. Examen Discrete Wiskunde II op donderdag 6 juli 2017, uur.

Universiteit Utrecht Betafaculteit. Examen Discrete Wiskunde II op donderdag 6 juli 2017, uur. Universiteit Utrecht Betafaculteit Examen Discrete Wiskunde II op donderdag 6 juli 2017, 13.30-16.30 uur. De opgaven dienen duidelijk uitgewerkt te zijn en netjes ingeleverd te worden. Schrijf op elk ingeleverd

Nadere informatie

3. Structuren in de taal

3. Structuren in de taal 3. Structuren in de taal In dit hoofdstuk behandelen we de belangrijkst econtrolestructuren die in de algoritmiek gebruikt worden. Dit zijn o.a. de opeenvolging, selectie en lussen (herhaling). Vóór we

Nadere informatie

TW2020 Optimalisering

TW2020 Optimalisering TW2020 Optimalisering Hoorcollege 10 Leo van Iersel Technische Universiteit Delft 23 november 2016 Leo van Iersel (TUD) TW2020 Optimalisering 23 november 2016 1 / 40 Vraag Ik heb het deeltentamen niet

Nadere informatie

Computationele Intelligentie

Computationele Intelligentie Computationele Intelligentie Uitwerking werkcollege Representatie, Ongeïnformeerd zoeken, Heuristisch zoeken 1 lokkenwereld a. De zoekboom die door het dynamische breadth-first search algoritme wordt gegenereerd

Nadere informatie

Een voorbeeld. Computationele Intelligentie Zoeken met een tegenstander. Een voorbeeld vervolg. Een zoekprobleem met een tegenstander

Een voorbeeld. Computationele Intelligentie Zoeken met een tegenstander. Een voorbeeld vervolg. Een zoekprobleem met een tegenstander Computationele Intelligentie Zoeken met een tegenstander Beschouw het boter-kaas-en-eieren spel: een probleemtoestand is een plaatsing van i kruisjes en j nulletjes in de vakjes van het raam, met i j en

Nadere informatie

Zoekproblemen met tegenstanders. Zoekalgoritmen ( ) College 9: Zoeken met een tegenstander (I) Een zoekprobleem met een tegenstander

Zoekproblemen met tegenstanders. Zoekalgoritmen ( ) College 9: Zoeken met een tegenstander (I) Een zoekprobleem met een tegenstander Zoekproblemen met tegenstanders Zoekalgoritmen (29 2) College 9: Zoeken met een tegenstander (I) Dirk Thierens, Tekst: Linda van der Gaag Zoekproblemen met meer dan één partij worden gekenmerkt door interventies

Nadere informatie

Overzicht. Inleiding. Toepassingen. Verwante problemen. Modellering. Exacte oplosmethode: B&B. Insertie heuristieken. Local Search

Overzicht. Inleiding. Toepassingen. Verwante problemen. Modellering. Exacte oplosmethode: B&B. Insertie heuristieken. Local Search Overzicht Inleiding Toepassingen Verwante problemen Modellering Exacte oplosmethode: B&B Insertie heuristieken Local Search Handelsreizigersprobleem 1 Cyclische permutatie van steden b 3 77 a 93 21 42

Nadere informatie

2 Recurrente betrekkingen

2 Recurrente betrekkingen WIS2 1 2 Recurrente betrekkingen 2.1 Fibonacci De getallen van Fibonacci Fibonacci (= Leonardo van Pisa), 1202: Bereken het aantal paren konijnen na één jaar, als 1. er na 1 maand 1 paar pasgeboren konijnen

Nadere informatie

Branch-and-Bound en Cutting Planes

Branch-and-Bound en Cutting Planes Branch-and-Bound en Cutting Planes Vandaag: Er is nog geen algoritme om ILP s in polynomiale tijd op te lossen. Twee opties: 1 Exponentiëel algoritme dat optimale oplossing geeft 2 Polynomiaal algoritme

Nadere informatie

Netwerkdiagram voor een project. AOA: Activities On Arrows - activiteiten op de pijlen.

Netwerkdiagram voor een project. AOA: Activities On Arrows - activiteiten op de pijlen. Netwerkdiagram voor een project. AOA: Activities On Arrows - activiteiten op de pijlen. Opmerking vooraf. Een netwerk is een structuur die is opgebouwd met pijlen en knooppunten. Bij het opstellen van

Nadere informatie

Elfde college algoritmiek. 16 mei Dijkstra, Gretige algoritmen en Branch & Bound

Elfde college algoritmiek. 16 mei Dijkstra, Gretige algoritmen en Branch & Bound Algoritmiek 013/11 College 11 Elfde college algoritmiek 1 mei 013 Dijkstra, Gretige algoritmen en Branch & Bound 1 Algoritmiek 013/11 Voorbeeld -1- A B C D E F G H 9 7 5 A B C D E F G H 0 9 9 7 5 A B C

Nadere informatie

Elfde college algoritmiek. 21 april Dijkstra en Branch & Bound

Elfde college algoritmiek. 21 april Dijkstra en Branch & Bound Algoritmiek 011/11 College 11 Elfde college algoritmiek 1 april 011 Dijkstra en Branch & Bound 1 Algoritmiek 011/11 Kortste paden Gegeven een graaf G met gewichten op de takken, en een beginknoop s. We

Nadere informatie

Tweede Toets Datastructuren 29 juni 2016, , Educ-Γ.

Tweede Toets Datastructuren 29 juni 2016, , Educ-Γ. Tweede Toets Datastructuren 29 juni 2016, 13.30 15.30, Educ-Γ. Motiveer je antwoorden kort! Zet je mobiel uit. Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe

Nadere informatie

2WO12: Optimalisering in Netwerken

2WO12: Optimalisering in Netwerken 2WO12: Optimalisering in Netwerken Leo van Iersel Technische Universiteit Eindhoven (TU/E) en Centrum Wiskunde & Informatica (CWI) 10 en 13 februari 2014 http://homepages.cwi.nl/~iersel/2wo12/ l.j.j.v.iersel@gmail.com

Nadere informatie

Bewijs door inductie

Bewijs door inductie Bewijs door inductie 1 Bewijs door inductie Vaak bestaat een probleem erin aan te tonen dat een bepaalde eigenschap geldt voor elk natuurlijk getal. Als je wilt weten of iets waar is voor alle natuurlijke

Nadere informatie

Tiende college algoritmiek. 14 april Dynamisch Programmeren, Gretige Algoritmen, Kortste Pad met BFS

Tiende college algoritmiek. 14 april Dynamisch Programmeren, Gretige Algoritmen, Kortste Pad met BFS Algoritmiek 2016/Dynamisch Programmeren Tiende college algoritmiek 14 april 2016 Dynamisch Programmeren, Gretige Algoritmen, Kortste Pad met BFS 1 Algoritmiek 2016/Dynamisch Programmeren Houtzaagmolen

Nadere informatie

Begrenzing van het aantal iteraties in het max-flow algoritme

Begrenzing van het aantal iteraties in het max-flow algoritme Begrenzing van het aantal iteraties in het max-flow algoritme Het oplossen van het maximum stroom probleem met behulp van stroomvermeerderende paden werkt, maar het aantal iteraties kan aardig de spuigaten

Nadere informatie

Uitwerkingen Sum of Us

Uitwerkingen Sum of Us Instant Insanity Uitwerkingen Sum of Us Opgave A: - Opgave B: Voor elk van de vier kubussen kun je een graaf maken die correspondeert met de desbetreffende kubus. Elk van deze grafen bevat drie lijnen.

Nadere informatie

WISKUNDE B -DAG 2002 1+ 1 = 2. maar en hoe nu verder? 29 november 2002

WISKUNDE B -DAG 2002 1+ 1 = 2. maar en hoe nu verder? 29 november 2002 - 0 - WISKUNDE B -DAG 2002 1+ 1 = 2 maar en hoe nu verder? 29 november 2002 De Wiskunde B-dag wordt gesponsord door Texas Instruments - 1 - Inleiding Snel machtverheffen Stel je voor dat je 7 25 moet uitrekenen.

Nadere informatie

Transport-, Routing- en Schedulingproblemen. Wi4062TU / Wi487TU / a86g. Uitwerkingen 08-04-2005

Transport-, Routing- en Schedulingproblemen. Wi4062TU / Wi487TU / a86g. Uitwerkingen 08-04-2005 Transport-, Routing- en Schedulingproblemen Wi4062TU / Wi487TU / a86g Uitwerkingen 08-04-2005 1 Transportprobleem Onderdeel a Fabriek 1 kan 120 ton staal fabriceren in 40 uur. Voor fabriek 2 is dit 150

Nadere informatie

Vierde college complexiteit. 16 februari Beslissingsbomen en selectie

Vierde college complexiteit. 16 februari Beslissingsbomen en selectie Complexiteit 2016/04 College 4 Vierde college complexiteit 16 februari 2016 Beslissingsbomen en selectie 1 Complexiteit 2016/04 Zoeken: samengevat Ongeordend lineair zoeken: Θ(n) sleutelvergelijkingen

Nadere informatie

Zevende college complexiteit. 7 maart Mergesort, Ondergrens sorteren (Quicksort)

Zevende college complexiteit. 7 maart Mergesort, Ondergrens sorteren (Quicksort) College 7 Zevende college complexiteit 7 maart 2017 Mergesort, Ondergrens sorteren (Quicksort) 1 Inversies Definitie: een inversie van de permutatie A[1],A[2],...,A[n] is een paar (A[i],A[j]) waarvoor

Nadere informatie

3. Elke lijn van een graaf draagt twee bij tot de som van alle graden.

3. Elke lijn van een graaf draagt twee bij tot de som van alle graden. Antwoorden Doeboek 4 Grafen.. De middelste en de rechtergraaf.. Een onsamenhangende graaf met vijf punten en vijf lijnen: Teken een vierhoek met één diagonaal. Het vijfde punt is niet verbonden met een

Nadere informatie

Vierde college complexiteit. 14 februari Beslissingsbomen

Vierde college complexiteit. 14 februari Beslissingsbomen College 4 Vierde college complexiteit 14 februari 2017 Restant zoeken Beslissingsbomen 1 Binair zoeken Links := 1; Rechts := n; while Links Rechts do Midden := Links + Rechts 2 ; if X = A[Midden] then

Nadere informatie

Set 1 Inleveropgaven Kansrekening (2WS20)

Set 1 Inleveropgaven Kansrekening (2WS20) 1 Technische Universiteit Eindhoven Faculteit Wiskunde en Informatica Set 1 Inleveropgaven Kansrekening (2WS20) 2014-2015 1. (Het sleutelprobleem) In een denkbeeldige wedstrijd kunnen deelnemers auto s

Nadere informatie

Datum. Vraag het bedrag in BEF. Reken om naar EURO. Toon het bedrag in EURO. --- Vraag het bedrag in BEF--- --- Reken om naar EURO---

Datum. Vraag het bedrag in BEF. Reken om naar EURO. Toon het bedrag in EURO. --- Vraag het bedrag in BEF--- --- Reken om naar EURO--- 3UREOHPHQRSORVVHQPHW9%$WRHSDVVLQJHQELMGHHO Naam. NR : Klas. PC : Datum. 23*$9( Hieronder vind je het algoritme om een bedrag in BEF om te rekenen naar EURO. Zet het algoritme om in programmacode. Noem

Nadere informatie

Elke groep van 3 leerlingen heeft een 9 setje speelkaarten nodig: 2 t/m 10, bijvoorbeeld alle schoppen, of alle harten kaarten.

Elke groep van 3 leerlingen heeft een 9 setje speelkaarten nodig: 2 t/m 10, bijvoorbeeld alle schoppen, of alle harten kaarten. Versie 16 januari 2017 Sorteren unplugged Sorteren gebeurt heel veel. De namen van alle leerlingen in de klas staan vaak op alfabetische volgorde. De wedstrijden van een volleybal team staan op volgorde

Nadere informatie

Indexen.

Indexen. Indexen joost.vennekens@kuleuven.be Probleem Snel gegevens terugvinden Gegevens moeten netjes geordend zijn Manier waarop hangt af van gebruik Sequentieel Gesorteerde gegevens, die in volgorde overlopen

Nadere informatie

De regels van het spel

De regels van het spel Het bordspel hex De regels van het spel I Er zijn twee spelers, die om beurten een steen in één van de lege zeshoekjes plaatsen; De regels van het spel I Er zijn twee spelers, die om beurten een steen

Nadere informatie

TW2020 Optimalisering

TW2020 Optimalisering TW2020 Optimalisering Hoorcollege 13 Leo van Iersel Technische Universiteit Delft 9 december 2015 Leo van Iersel (TUD) TW2020 Optimalisering 9 december 2015 1 / 13 Vraag Wat moet ik kennen en kunnen voor

Nadere informatie

Getallenleer Inleiding op codeertheorie. Cursus voor de vrije ruimte

Getallenleer Inleiding op codeertheorie. Cursus voor de vrije ruimte Getallenleer Inleiding op codeertheorie Liliane Van Maldeghem Hendrik Van Maldeghem Cursus voor de vrije ruimte 2 Hoofdstuk 1 Getallenleer 1.1 Priemgetallen 1.1.1 Definitie en eigenschappen Een priemgetal

Nadere informatie

Uitgebreide uitwerking tentamen Algoritmiek Dinsdag 5 juni 2007, uur

Uitgebreide uitwerking tentamen Algoritmiek Dinsdag 5 juni 2007, uur Uitgebreide uitwerking tentamen Algoritmiek Dinsdag juni 00, 0.00.00 uur Opgave. a. Een toestand bestaat hier uit een aantal stapels, met op elk van die stapels een aantal munten (hooguit n per stapel).

Nadere informatie

2 n 1. OPGAVEN 1 Hoeveel cijfers heeft het grootste bekende Mersenne-priemgetal? Met dit getal vult men 320 krantenpagina s.

2 n 1. OPGAVEN 1 Hoeveel cijfers heeft het grootste bekende Mersenne-priemgetal? Met dit getal vult men 320 krantenpagina s. Hoofdstuk 1 Getallenleer 1.1 Priemgetallen 1.1.1 Definitie en eigenschappen Een priemgetal is een natuurlijk getal groter dan 1 dat slechts deelbaar is door 1 en door zichzelf. Om technische redenen wordt

Nadere informatie

TW2020 Optimalisering

TW2020 Optimalisering TW2020 Optimalisering Hoorcollege 12 Leo van Iersel Technische Universiteit Delft 7 december 2016 Leo van Iersel (TUD) TW2020 Optimalisering 7 december 2016 1 / 25 Volgende week: Study guide Vragenuurtje

Nadere informatie

Stelling. SAT is NP-compleet.

Stelling. SAT is NP-compleet. Het bewijs van de stelling van Cook Levin zoals gegeven in het boek van Sipser gebruikt niet-deterministische turing machines. Het is inderdaad mogelijk de klasse NP op een alternatieve wijze te definiëren

Nadere informatie

Kortste Paden. Algoritmiek

Kortste Paden. Algoritmiek Kortste Paden Toepassingen Kevin Bacon getal Six degrees of separation Heeft een netwerk de small-world eigenschap? TomTom / Google Maps 2 Kortste paden Gerichte graaf G=(N,A), en een lengte L(v,w) voor

Nadere informatie

Gegevens invullen in HOOFDLETTERS en LEESBAAR, aub. Belgische Olympiades in de Informatica (duur : maximum 1u15 )

Gegevens invullen in HOOFDLETTERS en LEESBAAR, aub. Belgische Olympiades in de Informatica (duur : maximum 1u15 ) OI 2010 Finale 12 Mei 2010 Gegevens invullen in HOOFDLETTERS en LEESBAAR, aub VOORNAAM :....................................................... NAAM :..............................................................

Nadere informatie

Datastructuren. Analyse van algoritmen. José Lagerberg. FNWI, UvA. José Lagerberg (FNWI, UvA) Datastructuren 1 / 46

Datastructuren. Analyse van algoritmen. José Lagerberg. FNWI, UvA. José Lagerberg (FNWI, UvA) Datastructuren 1 / 46 Datastructuren Analyse van algoritmen José Lagerberg FNWI, UvA José Lagerberg (FNWI, UvA) Datastructuren 1 / 46 Datastructuren en Algoritmen Datastructuren, 6 ECTS eerstejaars Bachelor INF Datastructuren,

Nadere informatie

In Katern 2 hebben we de volgende rekenregel bewezen, als onderdeel van rekenregel 4:

In Katern 2 hebben we de volgende rekenregel bewezen, als onderdeel van rekenregel 4: Katern 4 Bewijsmethoden Inhoudsopgave 1 Bewijs uit het ongerijmde 1 2 Extremenprincipe 4 3 Ladenprincipe 8 1 Bewijs uit het ongerijmde In Katern 2 hebben we de volgende rekenregel bewezen, als onderdeel

Nadere informatie

Negende college algoritmiek. 15 april Dynamisch Programmeren

Negende college algoritmiek. 15 april Dynamisch Programmeren Negende college algoritmiek 15 april 2016 Dynamisch Programmeren 1 algemeen Uit college 8: DP: - nuttig bij problemen met overlappende deelproblemen - druk een oplossing van het probleem uit in oplossingen

Nadere informatie

Een combinatorische oplossing voor vraag 10 van de LIMO 2010

Een combinatorische oplossing voor vraag 10 van de LIMO 2010 Een combinatorische oplossing voor vraag 10 van de LIMO 2010 Stijn Vermeeren (University of Leeds) 16 juni 2010 Samenvatting Probleem 10 van de Landelijke Interuniversitaire Mathematische Olympiade 2010vraagt

Nadere informatie

1 Rekenen in eindige precisie

1 Rekenen in eindige precisie Rekenen in eindige precisie Een computer rekent per definitie met een eindige deelverzameling van getallen. In dit hoofdstuk bekijken we hoe dit binnen een computer is ingericht, en wat daarvan de gevolgen

Nadere informatie

Het Land van Oct. Marte Koning Frans Ballering. Vierkant voor Wiskunde Wiskundeclubs

Het Land van Oct. Marte Koning Frans Ballering. Vierkant voor Wiskunde Wiskundeclubs Het Land van Oct Marte Koning Frans Ballering Vierkant voor Wiskunde Wiskundeclubs Hoofdstuk 1 Inleiding Hoi, ik ben de Vertellende Teller, en die naam heb ik gekregen na mijn meest bekende reis, de reis

Nadere informatie

groep 8 blok 7 antwoorden Malmberg s-hertogenbosch

groep 8 blok 7 antwoorden Malmberg s-hertogenbosch blok 7 groep 8 antwoorden Malmberg s-hertogenbosch blok 7 les 3 3 Reken de omtrek en de oppervlakte van de figuren uit. Gebruik m en m 2. 1 m C Omtrek figuur C 20 m Oppervlakte figuur C 22 m 2 A B Omtrek

Nadere informatie

Sum of Us 2014: Topologische oppervlakken

Sum of Us 2014: Topologische oppervlakken Sum of Us 2014: Topologische oppervlakken Inleiding: topologische oppervlakken en origami Een topologisch oppervlak is, ruwweg gesproken, een tweedimensionaal meetkundig object. We zullen in deze tekst

Nadere informatie

(On)Doenlijke problemen

(On)Doenlijke problemen Fundamentele Informatica In3 005 Deel 2 College 1 Cees Witteveen Parallelle en Gedistribueerde Systemen Faculteit Informatie Technologie en Systemen Overzicht Inleiding - Relatie Deel 1 en Deel 2 - Doenlijke

Nadere informatie

Hoofdstuk 1. Afspraken en notaties

Hoofdstuk 1. Afspraken en notaties Hoofdstuk 1 Afspraken en notaties In deze tekst onderzoeken we een eenvoudig dobbelspel: twee spelers hebben een dobbelsteen, gooien deze, en wie het hoogst aantal ogen gooit wint. Er blijken setjes dobbelstenen

Nadere informatie

Onafhankelijke verzamelingen en Gewogen Oplossingen, door Donald E. Knuth, The Art of Computer Programming, Volume 4, Combinatorial Algorithms

Onafhankelijke verzamelingen en Gewogen Oplossingen, door Donald E. Knuth, The Art of Computer Programming, Volume 4, Combinatorial Algorithms Onafhankelijke verzamelingen en Gewogen Oplossingen, door Donald E. Knuth, The Art of Computer Programming, Volume 4, Combinatorial Algorithms Giso Dal (0752975) Pagina s 5 7 1 Deelverzameling Representatie

Nadere informatie

STROOMDIAGRAMMEN. Hoofdstuk 8. Hoe je Galgje moet spelen. Voorbeelduitvoer van Galgje. Hoofdstuk 8 Stroomdiagrammen 67

STROOMDIAGRAMMEN. Hoofdstuk 8. Hoe je Galgje moet spelen. Voorbeelduitvoer van Galgje. Hoofdstuk 8 Stroomdiagrammen 67 Hoofdstuk 8 STROOMDIAGRAMMEN Hoofdstuk 8 Stroomdiagrammen 67 In dit hoofdstuk behandelen we: Hoe je Galgje moet spelen ASCII-tekeningen Een programma ontwerpen met behulp van stroomdiagrammen In dit hoofdstuk

Nadere informatie

Bij het oplossen van een telprobleem zijn de volgende 2 dingen belangrijk: Is de volgorde van de gekozen dingen van belang?

Bij het oplossen van een telprobleem zijn de volgende 2 dingen belangrijk: Is de volgorde van de gekozen dingen van belang? 4. tellen & kansen 4.1 Tellen Herkennen Je kunt een vraag over telproblemen herkennen aan signaalwoorden: - hoeveel mogelijkheden, manieren, routes, volgordes etc. zijn er?, - bereken het aantal mogelijkheden/manieren

Nadere informatie

Recapitulatie: Ongeïnformeerd zoeken. Zoekalgoritmen ( ) College 2: Ongeïnformeerd zoeken. Dynamische breadth-first search

Recapitulatie: Ongeïnformeerd zoeken. Zoekalgoritmen ( ) College 2: Ongeïnformeerd zoeken. Dynamische breadth-first search Recapitulatie: Ongeïnformeerd zoeken Zoekalgoritmen (009 00) College : Ongeïnformeerd zoeken Peter de Waal, Tekst: Linda van der Gaag een algoritme voor ongeïnformeerd zoeken doorzoekt de zoekruimte van

Nadere informatie

Universiteit Utrecht Betafaculteit. Examen Discrete Wiskunde op donderdag 13 april 2017, uur.

Universiteit Utrecht Betafaculteit. Examen Discrete Wiskunde op donderdag 13 april 2017, uur. Universiteit Utrecht Betafaculteit Examen Discrete Wiskunde op donderdag 13 april 2017, 14.30-17.30 uur. De opgaven dienen duidelijk uitgewerkt te zijn en netjes ingeleverd te worden. Schrijf op elk ingeleverd

Nadere informatie

Hieronder zie je hoe dat gaat. Opgave 3. Tel het aantal routes in de volgende onvolledige roosters van linksboven naar rechtsonder.

Hieronder zie je hoe dat gaat. Opgave 3. Tel het aantal routes in de volgende onvolledige roosters van linksboven naar rechtsonder. Groepsopdracht 1: Volledige en onvolledige roosters Voor een volledig rooster kun je de driehoek van Pascal gebruiken om te weten te komen hoeveel routes er van A naar B zijn. Bij onvolledige roosters

Nadere informatie

Workshop voorbereiden Authentieke instructiemodel

Workshop voorbereiden Authentieke instructiemodel Workshop voorbereiden Authentieke instructiemodel Workshop voorbereiden Uitleg Start De workshop start met een echte, herkenbare en uitdagende situatie. (v.b. het is een probleem, een prestatie, het heeft

Nadere informatie

1 Vervangingsstrategie auto

1 Vervangingsstrategie auto Transport-, Routing- en Schedulingproblemen Wi4062TU / Wi487TU / a86g Uitwerkingen 28-03-2002 1 Vervangingsstrategie auto Onderdeel a Zij V = {0, 1, 2, 3, 4, 5, 6}, waarbij knoop i staat voor het einde

Nadere informatie

Week 1 20-02-2013. Hier vind je uitwerkingen van enkele opgaven uit het dictaat Grafen: Kleuren en Routeren.

Week 1 20-02-2013. Hier vind je uitwerkingen van enkele opgaven uit het dictaat Grafen: Kleuren en Routeren. Combinatorische Optimalisatie, 2013 Week 1 20-02-2013 Hier vind je uitwerkingen van enkele opgaven uit het dictaat Grafen: Kleuren en Routeren. Opgave 1.16 Bewijs dat elke graaf een even aantal punten

Nadere informatie

wwww.wijzeroverdebasisschool.nl

wwww.wijzeroverdebasisschool.nl 31 spelletjes voor in de auto 1. Bingo met nummerborden Voor dit spelletje heb je een speciale bingokaart nodig. Op de bingokaart staan de getallen t/m 100. voor de getallen t/m 9 staat een 0. Nu kan het

Nadere informatie

Hoofdstuk!7!Kortste!paden!

Hoofdstuk!7!Kortste!paden! oofdstukkortstepaden oofdstukkortstepaden In een gewogen graaf is men soms geïnteresseerd in het kortste pad tussen twee punten: dat is een pad, waarbij de som van de gewichten zo klein mogelijk is..inleiding

Nadere informatie

Derde college complexiteit. 7 februari Zoeken

Derde college complexiteit. 7 februari Zoeken College 3 Derde college complexiteit 7 februari 2017 Recurrente Betrekkingen Zoeken 1 Recurrente betrekkingen -1- Rij van Fibonacci: 0,1,1,2,3,5,8,13,21,... Vanaf het derde element: som van de voorgaande

Nadere informatie

Spider Solitaire is NP-Compleet

Spider Solitaire is NP-Compleet Spider Solitaire is NP-Compleet Kenneth Verstraete 21 april 2016 1 Inleiding Spider Solitaire is een populair kaartspel dat alleen gespeeld wordt. Het werd/wordt standaard bij o.a. Microsoft Windows meegeleverd.

Nadere informatie

Netwerkdiagram voor een project. AON: Activities On Nodes - activiteiten op knooppunten

Netwerkdiagram voor een project. AON: Activities On Nodes - activiteiten op knooppunten Netwerkdiagram voor een project. AON: Activities On Nodes - activiteiten op knooppunten Opmerking vooraf. Een netwerk is een structuur die is opgebouwd met pijlen en knooppunten. Bij het opstellen van

Nadere informatie

ALGORITMIEK. Keuzemodule Wiskunde B/D. Mark de Berg TU Eindhoven

ALGORITMIEK. Keuzemodule Wiskunde B/D. Mark de Berg TU Eindhoven ALGORITMIEK Keuzemodule Wiskunde B/D Mark de Berg TU Eindhoven Voorwoord Algoritmiek is het gebied binnen de informatica dat zich bezig houdt met het ontwerpen en analyseren van algoritmen en datastructuren.

Nadere informatie

Universiteit Utrecht Faculteit Wiskunde en Informatica. Examen Optimalisering op maandag 18 april 2005, uur.

Universiteit Utrecht Faculteit Wiskunde en Informatica. Examen Optimalisering op maandag 18 april 2005, uur. Universiteit Utrecht Faculteit Wiskunde en Informatica Examen Optimalisering op maandag 18 april 2005, 9.00-12.00 uur. De opgaven dienen duidelijk uitgewerkt te zijn en netjes ingeleverd te worden. Schrijf

Nadere informatie

Basiskennis lineaire algebra

Basiskennis lineaire algebra Basiskennis lineaire algebra Lineaire algebra is belangrijk als achtergrond voor lineaire programmering, omdat we het probleem kunnen tekenen in de n-dimensionale ruimte, waarbij n gelijk is aan het aantal

Nadere informatie

Discrete Structuren. Piter Dykstra Opleidingsinstituut Informatica en Cognitie

Discrete Structuren. Piter Dykstra Opleidingsinstituut Informatica en Cognitie Discrete Structuren Piter Dykstra Opleidingsinstituut Informatica en Cognitie www.math.rug.nl/~piter piter@math.rug.nl 22 februari 2009 INDUCTIE & RECURSIE Paragrafen 4.3-4.6 Discrete Structuren Week 3:

Nadere informatie

Wiskundig denken, logica en redeneren Het gebruik van woorden en symbolen om patronen te beschrijven en patronen te herhalen Taal

Wiskundig denken, logica en redeneren Het gebruik van woorden en symbolen om patronen te beschrijven en patronen te herhalen Taal ctiviteit 11 Schatzoeken Eindige automaat Samenvatting Computerprogramma s moeten vaak rijen tekens verwerken, bijvoorbeeld de letters of woorden in een document, of zelfs een tekst die weer door een ander

Nadere informatie

recursie Hoofdstuk 5 Studeeraanwijzingen De studielast van deze leereenheid bedraagt circa 6 uur. Terminologie

recursie Hoofdstuk 5 Studeeraanwijzingen De studielast van deze leereenheid bedraagt circa 6 uur. Terminologie Hoofdstuk 5 Recursion I N T R O D U C T I E Veel methoden die we op een datastructuur aan kunnen roepen, zullen op een recursieve wijze geïmplementeerd worden. Recursie is een techniek waarbij een vraagstuk

Nadere informatie

1 Complexiteit. of benadering en snel

1 Complexiteit. of benadering en snel 1 Complexiteit Het college van vandaag gaat over complexiteit van algoritmes. In het boek hoort hier hoofdstuk 8.1-8.5 bij. Bij complexiteitstheorie is de belangrijkste kernvraag: Hoe goed is een algoritme?

Nadere informatie

Programmeermethoden. Recursie. week 11: november kosterswa/pm/

Programmeermethoden. Recursie. week 11: november kosterswa/pm/ Programmeermethoden Recursie week 11: 21 25 november 2016 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Pointers Derde programmeeropgave 1 Het spel Gomoku programmeren we als volgt: week 1: pointerpracticum,

Nadere informatie

l e x e voor alle e E

l e x e voor alle e E Geselecteerde uitwerkingen Werkcollege Introduceer beslissingsvariabelen x e met x e = als lijn e in de boom zit en anders x e = 0. De doelfunctie wordt: min e E l e x e Voor elke deelverzameling S V met

Nadere informatie

De volgende opgave gaat over de B-bomen van het college, waar sleutels zowel in de bladeren als ook in de interne knopen opgeslagen worden.

De volgende opgave gaat over de B-bomen van het college, waar sleutels zowel in de bladeren als ook in de interne knopen opgeslagen worden. . a) Een Fibonacci boom (niet te verwarren met een Fibonacci queue) van hoogte h is een AVL-boom van hoogte h met zo weinig mogelijk knopen. i. Geefvoorh =,,,,eenfibonacciboomvanhoogteh(eenboombestaande

Nadere informatie

Opgeloste en onopgeloste mysteries in de getaltheorie

Opgeloste en onopgeloste mysteries in de getaltheorie Opgeloste en onopgeloste mysteries in de getaltheorie Jan De Beule, Tom De Medts en Jeroen Demeyer Voorwoord 1 Voorwoord Beste leerling, Deze nota s zijn bedoeld als begeleiding bij 6 lesuren Opgeloste

Nadere informatie

TU/e 2DD50: Wiskunde 2 (1)

TU/e 2DD50: Wiskunde 2 (1) TU/e 2DD50: Wiskunde 2 (1) Organisatorische informatie Wat Dag Tijd Zaal Docent College Tue 5+6 Aud 6+15 Gerhard Woeginger Thu 1+2 Aud 1+4 Gerhard Woeginger Clicker session Tue 7+8 Aud 6+15 Gerhard Woeginger

Nadere informatie

Afbeelding 12-1: Een voorbeeld van een schaakbord met een zwart paard op a4 en een wit paard op e6.

Afbeelding 12-1: Een voorbeeld van een schaakbord met een zwart paard op a4 en een wit paard op e6. Hoofdstuk 12 Cartesische coördinaten 157 Hoofdstuk 12 CARTESISCHE COÖRDINATEN In dit hoofdstuk behandelen we: Het Cartesisch coördinatenstelsel De X-as en de Y-as De commutatieve eigenschap van optellen

Nadere informatie

Opgaven bij het vormen van ruimte: van Poincaré tot Perelman

Opgaven bij het vormen van ruimte: van Poincaré tot Perelman Opgaven bij het vormen van ruimte: van Poincaré tot Perelman Roland van der Veen Inleiding Deze reeks opgaven is bedoeld voor de werkcolleges van de vakantiecursus Wiskunde in Wording, Augustus 2013. 1

Nadere informatie

Naam:... Datum:... 36 + 12 =. 2 x 15 =. 47 + 43 =. 4 x 12 =. 25 + 11 =. 6 x 7 =. 38-16 =. 100 : 4 =. 17-6 =. 36 : 6 =.

Naam:... Datum:... 36 + 12 =. 2 x 15 =. 47 + 43 =. 4 x 12 =. 25 + 11 =. 6 x 7 =. 38-16 =. 100 : 4 =. 17-6 =. 36 : 6 =. Opvraging Wiskunde W1 36 + 12 =. 2 x 15 =. 47 + 43 =. 4 x 12 =. 25 + 11 =. 6 x 7 =. 38-16 =. 100 : 4 =. 17-6 =. 36 : 6 =. 2 Goed lezen en oplossen. Ik koop in de supermarkt een krant (80 cent), een brood

Nadere informatie