Tweede Toets Datastructuren 29 juni 2016, , Educ-Γ.
|
|
- Bertha van der Laan
- 7 jaren geleden
- Aantal bezoeken:
Transcriptie
1 Tweede Toets Datastructuren 29 juni 2016, , 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 je de vraag interpreteert en beantwoord de vraag zoals je hem begrijpt. Cijfer: Elke vraag levert evenveel punten, nl. 3, met een totaal van 18. T2 is punten plus 1, gedeeld door 1,8. 1. Verwijderen uit gelinkte lijst: In een doubly linked list heeft elke Node een key, prev en next. In een singly linked list ontbreekt de prev. (a) Geef een methode die Node y verwijdert uit een doubly linked list. (b) Geef een methode die Node y verwijdert uit een singly linked list. (c) Moet je y meegeven als ref parameter (zowel voor (a) als voor (b))? Leg uit! Oplossing: (a) Laat de voorganger van y wijzen naar de opvolger van y, en de opvolger naar de voorganger: y.prev.next = y.next; y.next.prev = y.prev;. Uitzonderingsgevallen af te handelen: als y de eerste of laatste Node is hoeft de aapassing van y.prev danwel y.next niet maar moet je misschien een externe pointer aanpassen. (b) Om dit te kunnen doen moet je y als ref argument geven. De methodeheader is dan void DelFirst(ref Node y) en in de methode gaat het als y = y.next;. (c) Zonder ref argument kun je in de singly linked niet bij de voorganger komen. In de doubly linked list kan dat wel en heb je y niet als ref nodig. (Je kunt wel de key en next van y s opvolger naar y kopiëren: y.key = y.next.key; y.next = y.next.next;. Dit kan natuurlijk niet als y de laatste knoop is.) Beoordeling/Toelichting: Tot 3pt; 1 per deelvraag. Codes: GR = Bij (c) zeggen dat t niet nodig is, als je bij (b) de lineaire oplossing hebt: toch punt. K = Nodes selecteren op basis van Key, 0pt. L = Oplossingen die superlineaire tijd kosten (bij b), 1/2pt. R = Bij (b) geen Ref gebruikt maar wel assignatie aan y, 0pt. Nog 1/2 terug te verdienen met argumentatie bij (c) dat die wel moet. U = De Uitzonderingsgevallen aan begin en einde van de lijst hoeven er niet bij voor puntentoekenning. V = Bij (c) moet je zien dat er Verschil is in deze situaties, dus je krijgt alleen een punt als je beide goed hebt, en niet een halve punt voor een goed.
2 2. Master Theorem: Bepaal de asymptotische oplossing van deze recurrenties met de Master Theorem. (a) V (n) = 2V (n/3) + 2n. (b) W (n) = W (n/3) + 1, 5 n. (c) X(n) = 3X(n/2) + O(n n). Oplossing: (a) Hier is a = 2, b = 3 en f(n) = 2n. b log a is ln 2/ ln 3 is 0,63. De f(n) is n 1 dus weegt polynomiaal zwaarder, zodat V (n) = Θ(n). (Ook als je niet weet hoe je de log uitrekent, kun je inzien dat 3 1 = 3, 2 is minder dus de log is minder dan 1.) (b) Hier is a = 1, b = 3 en f(n) = 1, 5 n. b log a is ln 1/ ln 3 is 0. De f(n) is exponentieel dus weegt sowieso zwaarder, zodat W (n) = Θ(1, 5 n ). (c) Hier is a = 3 en b = 2 en f(n) = O(n 1,5 ). b log a is ln 3/ ln 2 is 1,58. Dit is meer dan 1,5 dus is deze term polynomiaal meer dan f(n) zodat X(n) = Θ(n 1,58... ). Beoordeling/Toelichting: Een punt per goed antwoord; geen halve punten voor goedbedoelde deelredeneringen of half goed toegepaste stellingen en gevallen. Bij (c) moet je wel echt even de log kunnen uitrekenen om te zien dat hij meer dan 1,5 is. Als je kunt bedenken dat 2 1,5 hetzelfde is als 2 2, en weet dat dit ongeveer 2,8 is, dus minder dan 3, en kunt concluderen dat de log dus meer dan 1,5 is, dan had je die log waarschijnlijk ook wel kunnen uitrekenen. M = Niet met de Master Theorem gedaan. P = Er is wel een Polynomiale factor (namelijk n 0,08.. ) tussen n 1,5 en n 1,58... T = Of je Θ of O moet antwoorden is weer een heel verhaal. Bij deze vragen was in alledrie de gevallen Θ gerechtvaardigd, maar als je O opschreef was het ook goed. V = De Vorm, bv. O(2n), is niet goed (moet O(n) zijn), 1/2pt.
3 3. MinHeap: Deze vraag gaat over een MinHeap in een 1-based array A. In A staan deze getallen: (8, 48, 31, 20, 18, 33, 35, 30, 45, 21, 20, 35). (a) Welke veranderingen vinden plaats als Heapify(2) wordt aangeroepen? (b) Vervolgens wordt key 27 toegevoegd. Zeg wat er gebeurt en geef de heap na toevoeging. (c) Welke posities in een heap met n keys hebben geen kinderen, welke hebben 1 kind en welke hebben 2 kinderen? Oplossing: (a) De key op plaats 2, 48, wisselt met zijn kleinste kind 18 op plaats 5. Dan wordt Heapify(5) aangeroepen en wisselt 48 weer met zijn kleinste kind, 20 op positie 11. Dan wordt Heapify(11) aangeroepen maar positie 11 heeft geen kinderen en er gebeurt niets meer. Heap is dus: (8, 18, 31, 20, 20, 33, 35, 30, 45, 21, 48, 35) (b) Nieuwe keys worden toegevoegd op de eerste lege plek en dan wordt Rootify aangeroepen. Dus 27 komt op plek 13, en Rootify(13) laat hem wisselen met zijn parent op plek 6, 33, want dat getal is groter. De volgende Rootify(6) laat 27 wisselen met zijn parent 31 op plek 3 want die is groter. De volgende Rootify(3) doet niets meer omdat 27 groter is dan zijn parent 8. Heap dan: (8, 18, 27, 20, 20, 31, 35, 30, 45, 21, 48, 35, 33). (c) Kinderen van knoop i zijn 2i en 2i + 1 maar deze bestaan alleen als dat kleinergelijk n is. Elke positie i < n/2 heeft twee kinderen. Alleen als n even is, bestaat er een knoop met 1 kind en dat is n/2: linkerkind is n (bestaat) en rechterkind is n + 1 (bestaat niet). Posities groter dan n/2 hebben geen kinderen. Beoordeling/Toelichting: Tot 3pt, 1 voor elke deelvraag. A = Niet Algemeen genoeg (antwoord bv alleen voor n een tweemacht), 0pt. E = Geen onderscheid Even/oneven gemaakt. T = Grens tussen 0 of 2 kinderen ligt niet bij Tweemacht. V = Bij (b) staat Vervolgens, je moet dus toevoegen na het Heapifyen uit (a).
4 4. ContainsValue: Christa slaat records op die een (spelers) naam en een score bevatten. Zij wil kunnen invoegen/verwijderen/zoeken op naam, en zij heeft een efficiente ZoekSc(s) nodig die de naam oplevert van een speler met score s. (a) Christa overweegt opslag in een hashtabel met de naam als key. Hoe kan zij een ZoekSc(s) uitvoeren? (b) Hoeveel tijd kost de ZoekSc bij deze opslag (noem de lengte van de hashtabel m en het aantal records n)? (c) Kan Christa haar ZoekSc(s) sneller krijgen door de records in een zoekboom op te slaan? Leg uit. Oplossing: (a) Christa moet alle records enumereren en checken of s erin zit (en kan misschien eerder termineren als ze s vindt). (b) Voor een hashtabel met m plaatsen en n keys kost dit O(n + m) tijd, dus zeg lineair. (c) Een zoekboom is voor Christa niet beter. Je kunt wel meer met de keys waarop de boom geordend is, maar zoeken op een andere waarde kan niet efficienter dan lineair. Christa zal haar boom moeten ordenen op naam en dan kost zoeken op score lineaire tijd. (Christa kan het beste bij haar verzameling records, twee hashtabellen maken: eentje waarin gehasht wordt op de key en eentje waarin gehasht wordt op value. Alle vier de operaties kunnen dan in O(1) tijd. Beoordeling/Toelichting: Tot 3pt, 1 per deelvraag. Voor de beoordeling moet wel duidelijk zijn dat je het centrale probleem snapt: dat Christa wil zoeken op een veld dat niet de key van de datastructuur is. B = Een Boom is altijd trager dan een hashtabel omdat (door de aanpassing van m aan n) de α doorgaans begrensd blijft. C = Ze moet een ContainsValue doen, ja, ok, maar hoe moet dat dan? 0pt. E = Boom Enumereert sneller omdat je de lege velden niet hebt geeft maar 1/2pt. Bij normale load factor enumereren hashtabel en boom in lineaire tijd, en Θ(n) is nog steeds heel veel. H = Uitlag hoe Hashen normaal werkt (key afbeelden op getal en in array opzoeken) Werd niet gevraagd. L = Bij begrensde Load factor α zijn n en m asymptotisch gelijk en kun je Θ(n) of Θ(m) schrijven. N = Itereren over alle Namen kan niet zomaar in een hashtabel. S = Een zoekboom (of hashtabel) met Score als key is niet goed voor Christa omdat ze daarmee geen toegang meer heeft met een naam, 0pt.
5 5. Selectie uit Boom: Gegeven is een binaire zoekboom, geaugmenteerd met het aantal keys per deelboom. Elke knoop bevat een key, deelbomen left en right, en een integer size die het aantal keys in de deelboom geeft. Geef een recursieve methode KR(node b, int k) die uit boom b het element met rang k oplevert (dwz., het op k na kleinste element; je mag aannemen dat alle keys verschillend zijn en dat 0 k < b.size geldt). De methode moet recursief zijn en de tijd moet lineair zijn in de hoogte van de boom (dus O(h)). Oplossing: Als (k == b.left.size) is de key in b de goede. Bij kleinere k moet je naar links en bij grotere naar rechts. Wel moet je er even aan denken dat je bij recursie naar rechts, de waarde van k moet verlagen. De verzameling keys in de rechterdeelboom is namelijk de hele set, minus de keys links en die in de wortel, dus de rang binnen de rechterdeelboom is b.left.size+1 kleiner dan de rang in de hele boom. Als je een truuk hebt geprogrammeerd zodat null.size automatisch 0 oplevert, ziet het er zo uit: KR(node b, int k) { if (k == b.left.size) return b.key; if (k < b.left.size) return KR(b.left, k); else return KR(b.right, k - b.left.size - 1); } Je kunt lege linkerkant ook expliciet afhandelen: erop testen en dan bij k = 0 de wortel opleveren, anders naar rechts met rang k 1. Beoordeling/Toelichting: Tot 3pt. A = Vergeten of onjuiste aanpassing van k in recursie. Incorrect algo, 2pt aftrek. B = Je moet k niet vergelijken met B.size maar met b.left.size; incorrect, aftrek 1,5pt. D = Dit is te Duur, je gebruikt tijd lineair in het aantal keys, 2pt aftrek. G = Over balancering is niets Gegeven; bij fout algoritme -2pt. K = GebruiK notatie uit de opdracht ipv nieuwe namen te verzinnen. L = Niets gezegd over Lege Linkerkant, 1/2pt aftrek. N = Het geval b == Null afhandelen is mooi, maar hoeft niet. R = Je methode is niet Recursief, 1.5pt eraf. 6. Recurrente betrekking: Los op: a 0 = 1, a 1 = 1, a n = a n 1 + 6a n 2. Oplossing: De oplossing is a n = 2 5 ( 2)n n of 2 ( 2)n +3 3 n. 5 Het Karakteristiek Polynoom is x 2 x 6 en de nulpunten hiervan zijn 2 en 3. Je verkrijgt dus de Algemene Oplossing a n = C ( 2) n + D 3 n. Invullen van de Randwaarde voor n = 0 geeft C +D = 1 en voor n = 1 geeft 2C +3D = 1. Uit die twee vergelijkingen haal je C = 2 en D = Beoordeling/Toelichting: Tot 3pt om dit perfect op te lossen. Heb je het KP met nulpunten 2 en 3, daarvoor 1pt. Heb je de vergelijkingen voor C en D opgesteld en goed opgelost, 1pt. Verdere lettercodes: C = Conclusie vergeten, 1pt. G = Je hebt de vraag niet beantwoord, we wilden een Gesloten formule voor a n.
Tweede Toets Datastructuren 26 juni 2019, , Educ-β.
Tweede Toets Datastructuren 26 juni 2019, 17.00 19.00, Educ-β. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag interpreteert
Nadere informatieOpgaven Abstracte Datastructuren Datastructuren, Werkgroep, 31 mei 2017.
Opgaven Abstracte Datastructuren Datastructuren, Werkgroep, 31 mei 2017. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes
Nadere informatieTweede Toets Datastructuren 28 juni 2017, , Educ-β.
Tweede Toets Datastructuren 28 juni 2017, 13.30 15.30, Educ-β. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag interpreteert
Nadere informatieOpgaven Hash Tabellen Datastructuren, 15 juni 2018, Werkgroep.
Opgaven Hash Tabellen Datastructuren, 15 juni 2018, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot acht
Nadere informatieTweede Toets Datastructuren 27 juni 2018, , Olympos Hal 2.
Tweede Toets Datastructuren 27 juni 2018, 13.30 15.30, Olympos Hal 2. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag
Nadere informatieDatastructuren en Algoritmen
Datastructuren en Algoritmen Tentamen Vrijdag 6 november 2015 13.30-16.30 Toelichting Bij dit tentamen mag je gebruik maken van een spiekbriefje van maximaal 2 kantjes. Verder mogen er geen hulpmiddelen
Nadere informatieOpgaven Zoekbomen Datastructuren, 20 juni 2018, Werkgroep.
Opgaven Zoekbomen Datastructuren, 20 juni 2018, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot acht opgaven.
Nadere informatieOpgaven Heaps Datastructuren, 8 juni 2018, Werkgroep.
Opgaven Heaps Datastructuren, 8 juni 2018, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot acht opgaven.
Nadere informatieEerste Toets Datastructuren 22 mei 2019, , Educ-β en Megaron.
Eerste Toets Datastructuren 22 mei 209, 3.30 5.30, Educ-β en Megaron. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag
Nadere informatieOpgaven Zoekbomen Datastructuren, 15 juni 2016, Werkgroep.
Opgaven Zoekbomen Datastructuren, 15 juni 2016, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot acht opgaven.
Nadere informatieOpgaven Fibonacci-getallen Datastructuren, 23 juni 2017, Werkgroep.
Opgaven Fibonacci-getallen Datastructuren, 3 juni 017, Werkgroep Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege Cijfer: Op een toets krijg je meestal zes tot acht
Nadere informatieExamen Datastructuren en Algoritmen II
Tweede bachelor Informatica Academiejaar 2012 2013, tweede zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele
Nadere informatieDatastructuren en algoritmen voor CKI
Datastructuren en algoritmen voor CKI Jeroen Bransen 1 11 september 2015 1 met dank aan Hans Bodlaender en Gerard Tel Heaps en heapsort Heap 1 2 3 4 5 6 7 8 9 10 16 14 10 8 7 9 3 2 4 1 16 14 10 8 7 9 3
Nadere informatieAlgoritmen, Datastructuren en Complexiteit ( ) Uitwerkingen
Universiteit Twente Kwartiel 010/ Afdeling Informatica 1 e huiswerkserie 6 december 010 Algoritmen, Datastructuren en Complexiteit 1914000 Uitwerkingen De deadline voor het inleveren van deze huiswerkserie
Nadere informatieOpgaven Recursie: Analyse en Master Theorem Datastructuren, 6 juni 2018, Werkgroep.
Opgaven Recursie: Analyse en Master Theorem Datastructuren, 6 juni 2018, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je
Nadere informatieTweede college complexiteit. 12 februari Wiskundige achtergrond
College 2 Tweede college complexiteit 12 februari 2019 Wiskundige achtergrond 1 Agenda vanmiddag Floor, Ceiling Rekenregels logaritmen Tellen Formele definitie O, Ω, Θ met voorbeelden Stellingen over faculteiten
Nadere informatieExamen Datastructuren en Algoritmen II
Tweede bachelor Informatica Academiejaar 2010 2011, tweede zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele
Nadere informatieDatastructuren en algoritmen voor CKI
Datastructuren en algoritmen voor CKI Jeroen Bransen 1 9 oktober 2015 1 met dank aan Hans Bodlaender en Gerard Tel Zoekbomen Binaire boom Bestaat uit knopen Beginknoop is de wortel (root) Elke knoop heeft
Nadere informatieDiscrete 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 informatieExamen Datastructuren en Algoritmen II
Tweede bachelor Informatica Academiejaar 2014 2015, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele
Nadere informatieDatastructuren en algoritmen voor CKI
Datastructuren en algoritmen voor CKI Jeroen Bransen 1 2 oktober 2015 1 met dank aan Hans Bodlaender en Gerard Tel Priority queue Priority queue ADT insert(q, x): voeg element x toe aan de queue maximum(q):
Nadere informatieEerste Toets Datastructuren 11 juli 2018, , Educ-α.
Eerste Toets Datastructuren 11 juli 2018, 13.30 15.30, Educ-α. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag interpreteert
Nadere informatieVierde college algoritmiek. 23/24 februari Complexiteit en Brute Force
Algoritmiek 2017/Complexiteit Vierde college algoritmiek 23/24 februari 2017 Complexiteit en Brute Force 1 Algoritmiek 2017/Complexiteit Tijdcomplexiteit Complexiteit (= tijdcomplexiteit) van een algoritme:
Nadere informatieCombinatoriek groep 1 & 2: Recursie
Combinatoriek groep 1 & : Recursie Trainingsweek juni 008 Inleiding Bij een recursieve definitie van een rij wordt elke volgende term berekend uit de vorige. Een voorbeeld van zo n recursieve definitie
Nadere informatieDatastructuren: stapels, rijen en binaire bomen
Programmeermethoden Datastructuren: stapels, rijen en binaire bomen week 12: 23 27 november 2015 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 Inleiding In de informatica worden Abstracte DataTypen (ADT s)
Nadere informatieElfde college algoritmiek. 18 mei Algoritme van Dijkstra, Heap, Heapify & Heapsort
Algoritmiek 018/Algoritme van Dijkstra Elfde college algoritmiek 18 mei 018 Algoritme van Dijkstra, Heap, Heapify & Heapsort 1 Algoritmiek 018/Algoritme van Dijkstra Uit college 10: Voorb. -1- A B C D
Nadere informatieExamen Datastructuren en Algoritmen II
Tweede bachelor Informatica Academiejaar 2016 2017, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele
Nadere informatieDatastructuren en algoritmen voor CKI
Datastructuren en algoritmen voor CKI Jeroen Bransen 1 30 september 2015 1 met dank aan Hans Bodlaender en Gerard Tel Dynamische verzamelingen Stack implementaties Array met maximale grootte Linked List
Nadere informatieExamen Datastructuren en Algoritmen II
Tweede bachelor Informatica Academiejaar 2012 2013, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele
Nadere informatieTweede Toets Concurrency 2 februari 2017, , Educ-β.
Tweede Toets Concurrency 2 februari 2017, 8.30 10.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 informatieDivide & Conquer: Verdeel en Heers vervolg. Algoritmiek
Divide & Conquer: Verdeel en Heers vervolg Algoritmiek Algoritmische technieken Vorige keer: Divide and conquer techniek Aantal toepassingen van de techniek Analyse met Master theorem en substitutie Vandaag:
Nadere informatieRecursion. Introductie 37. Leerkern 37. Terugkoppeling 40. Uitwerking van de opgaven 40
Recursion Introductie 37 Leerkern 37 5.1 Foundations of recursion 37 5.2 Recursive analysis 37 5.3 Applications of recursion 38 Terugkoppeling 40 Uitwerking van de opgaven 40 Hoofdstuk 5 Recursion I N
Nadere informatieAlgoritmiek. 15 februari Grafen en bomen
Algoritmiek 15 februari 2019 Grafen en bomen 1 Grafen (herhaling) Een graaf G wordt gedefinieerd als een paar (V,E), waarbij V een eindige verzameling is van knopen (vertices) en E een verzameling van
Nadere informatieInleiding Programmeren 2
Inleiding Programmeren 2 Gertjan van Noord November 28, 2016 Stof week 3 nogmaals Zelle hoofdstuk 8 en recursie Brookshear hoofdstuk 5: Algoritmes Datastructuren: tuples Een geheel andere manier om te
Nadere informatierecursie 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 informatiePermutatie. Definitie: een permutatie is een bijectie waarvan het domein en het bereik dezelfde verzameling zijn. Voorbeeld:
Permutatie Definitie: een permutatie is een bijectie waarvan het domein en het bereik dezelfde verzameling zijn. Voorbeeld: 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 Cykelnotatie Algoritme 1)Maak een cykel van
Nadere informatieInleiding Programmeren 2
Inleiding Programmeren 2 Gertjan van Noord November 26, 2018 Stof week 3 nogmaals Zelle hoofdstuk 8 en recursie Brookshear hoofdstuk 5: Algoritmes Datastructuren: tuples Een geheel andere manier om te
Nadere informatieTweede college algoritmiek. 12 februari Grafen en bomen
College 2 Tweede college algoritmiek 12 februari 2016 Grafen en bomen 1 Grafen (herhaling) Een graaf G wordt gedefinieerd als een paar (V,E), waarbij V een eindige verzameling is van knopen (vertices)
Nadere informatieExamen Datastructuren en Algoritmen II
Tweede bachelor Informatica Academiejaar 2008 2009, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees elke
Nadere informatieDerde 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 informatieOpgaven Eigenschappen van Getallen Security, 2018, Werkgroep.
Opgaven Eigenschappen van Getallen Security, 2018, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot acht
Nadere informatieTentamen Programmeren in C (EE1400)
TU Delft Tentamen Programmeren in C (EE1400) 5 april 2012, 9.00 12.00 Faculteit EWI - Zet op elk antwoordblad je naam en studienummer. - Beantwoord alle vragen zo nauwkeurig mogelijk. - Wanneer C code
Nadere informatieOpgaven QuickSort 3 mei 2019, Werkgroep, Datastructuren.
Opgaven QuickSort 3 mei 2019, Werkgroep, Datastructuren. Als je klaar bent, maak dan de opgaven van vorige keer af. Cijfer: Op een toets krijg je meestal zes tot acht opgaven. 1. Doe QuickSort: Voer QuickSort
Nadere informatieExamen Datastructuren en Algoritmen II
Tweede bachelor Informatica Academiejaar 2008 2009, tweede zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees elke
Nadere informatieExamen Datastructuren en Algoritmen II
Tweede bachelor Informatica Academiejaar 2009 2010, eerste zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. Lees de hele
Nadere informatieVierde college complexiteit. 26 februari Beslissingsbomen en selectie Toernooimethode Adversary argument
Complexiteit 2019/04 College 4 Vierde college complexiteit 26 februari 2019 Beslissingsbomen en selectie Toernooimethode Adversary argument 1 Complexiteit 2019/04 Zoeken: samengevat Ongeordend lineair
Nadere informatieUitwerking tentamen Algoritmiek 10 juni :00 13:00
Uitwerking tentamen Algoritmiek 10 juni 2014 10:00 13:00 1. Dominono s a. Toestanden: n x n bord met in elk hokje een O, een X of een -. Hierbij is het aantal X gelijk aan het aantal O of hooguit één hoger.
Nadere informatieDerde college algoritmiek. 22 februari Complexiteit Toestand-actie-ruimte
Algoritmiek 2019/Complexiteit Derde college algoritmiek 22 februari 2019 Complexiteit Toestand-actie-ruimte 1 Algoritmiek 2019/Complexiteit Opgave 1 bomenpracticum Niet de bedoeling: globale (member-)variabele
Nadere informatieVierde 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 informatieProgrammeermethoden NA. Week 6: Lijsten
Programmeermethoden NA Week 6: Lijsten Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/prna2016/ Getal opbouwen Stel je leest losse karakters (waaronder cijfers) en je moet daar een getal
Nadere informatiepublic boolean equaldates() post: returns true iff there if the list contains at least two BirthDay objects with the same daynumber
Tentamen TI1310 Datastructuren en Algoritmen, 15 april 2011, 9.00-12.00 TU Delft, Faculteit EWI, Basiseenheid Software Engineering Bij het tentamen mag alleen de boeken van Goodrich en Tamassia worden
Nadere informatieEerste Toets Concurrency 20 december 2018, , Educ-β.
Eerste Toets Concurrency 20 december 2018, 11.00 13.00, Educ-β. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag interpreteert
Nadere informatieElementary Data Structures 3
Elementary Data Structures 3 Ferd van Odenhoven Fontys Hogeschool voor Techniek en Logistiek Venlo Software Engineering 29 september 2014 ODE/FHTBM Elementary Data Structures 3 29 september 2014 1/14 Meer
Nadere informatie2 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 informatieOpgaven Stacks, Lijsten, Queues Datastructuren, Werkgroep, 2 juni 2017.
Opgaven Stacks, Lijsten, Queues Datastructuren, Werkgroep, 2 juni 2017. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes
Nadere informatieEerste Toets Datastructuren 25 mei 2018, , Educ-Γ.
Eerste Toets Datastructuren 25 mei 2018, 11.00 13.00, Educ-Γ. Motiveer je antwoorden kort! Stel geen vragen over deze toets; als je een vraag niet duidelijk vindt, schrijf dan op hoe je de vraag interpreteert
Nadere informatieProgrammeermethoden NA
Programmeermethoden NA Week 6: Lijsten Kristian Rietveld http://liacs.leidenuniv.nl/~rietveldkfd/courses/prna/ Bij ons leer je de wereld kennen 1 Getal opbouwen Stel je leest losse karakters (waaronder
Nadere informatieVierde 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 informatieProgrammeren in C++ Efficiënte zoekfunctie in een boek
Examen Software Ontwikkeling I 2e Bachelor Informatica Faculteit Wetenschappen Academiejaar 2010-2011 21 januari, 2011 **BELANGRIJK** 1. Lees eerst de volledige opgave (inclusief de hints/opmerkingen)!
Nadere informatieDatastructuren: stapels, rijen en binaire bomen
Programmeermethoden : stapels, rijen en binaire bomen Walter Kosters week 12: 26 30 november 2018 www.liacs.leidenuniv.nl/ kosterswa/pm/ 1 en Vierde programmeeropgave Othello programmeren we als volgt:
Nadere informatieTentamen Programmeren in C (EE1400)
TU Delft Tentamen Programmeren in C (EE1400) 3 feb. 2012, 9.00 12.00 Faculteit EWI - Zet op elk antwoordblad je naam en studienummer. - Beantwoord alle vragen zo nauwkeurig mogelijk. - Wanneer C code gevraagd
Nadere informatieDatastructuren Uitwerking jan
Datastructuren Uitwerking jan 16 1 1a) Een ADT wordt gekenmerkt door de opgeslagen gegevens en de beschikbare operaties. De Priority Queue bevat en verzameling elementen waarbij elk element en eigen waarde
Nadere informatieDatastructuren Uitwerking jan
Datastructuren Uitwerking jan 2015 1 1a. Een abstracte datastructuur is een beschrijving van een datastructuur, met de specificatie van wat er opgeslagen wordt (de data en hun structuur) en welke operaties
Nadere informatieDerde college algoritmiek. 23 februari Complexiteit Toestand-actie-ruimte
Algoritmiek 2018/Complexiteit Derde college algoritmiek 2 februari 2018 Complexiteit Toestand-actie-ruimte 1 Algoritmiek 2018/Complexiteit Tijdcomplexiteit Complexiteit (= tijdcomplexiteit) van een algoritme:
Nadere informatieUitwerking tentamen Algoritmiek 9 juni :00 17:00
Uitwerking tentamen Algoritmiek 9 juni 2015 14:00 17:00 1. Clobber a. Toestanden: m x n bord met in elk hokje een O, een X of een -. Hierbij is het aantal O gelijk aan het aantal X of er is hooguit één
Nadere informatieAlgoritmiek 2013/ verwijderen. BZboom: verwijderen. Complexiteit (= tijdcomplexiteit) van een algoritme: Algoritmiek 2013/04
College 4 Vierde college algoritmiek 28 februari 2013 Complexiteit, Brute Force en Exhaustive Search 1 10 40 70 100 BZboom: zoeken 2 BZboom: verwijderen BZboom: verwijderen 10 40 70 100 100 verwijderen
Nadere informatieOpgaven Analyse van Algoritmen 10 mei 2019, Datastructuren, Werkgroep.
Opgaven Analyse van Algoritmen 10 mei 019, Datastructuren, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot
Nadere informatieUitgebreide uitwerking Tentamen Complexiteit, juni 2017
Uitgebreide uitwerking Tentamen Complexiteit, juni 017 Opgave 1. a. Een pad van de wortel naar een blad stelt de serie achtereenvolgende arrayvergelijkingen voor die het algoritme doet op zekere invoer.
Nadere informatieExamen Datastructuren en Algoritmen II
Tweede bachelor Informatica Academiejaar 2006 2007, tweede zittijd Examen Datastructuren en Algoritmen II Naam :.............................................................................. 1. Verzamelingen:
Nadere informatieZevende college Algoritmiek. 6 april Verdeel en Heers
Zevende college Algoritmiek 6 april 2018 Verdeel en Heers 1 Algoritmiek 2018/Backtracking Programmeeropdracht 2 Puzzel 2: D O N A L D G E R A L D + R O B E R T Elke letter stelt een cijfer voor (0,1,...,9)
Nadere informatieZevende college algoritmiek. 24 maart Verdeel en Heers
Zevende college algoritmiek 24 maart 2016 Verdeel en Heers 1 Verdeel en heers 1 Divide and Conquer 1. Verdeel een instantie van het probleem in twee (of meer) kleinere instanties 2. Los de kleinere instanties
Nadere informatieZevende college algoritmiek. 1 april Verdeel en Heers
Zevende college algoritmiek 1 april 2016 Verdeel en Heers 1 Verdeel en heers 1 Divide and Conquer 1. Verdeel een instantie van het probleem in twee (of meer) kleinere instanties 2. Los de kleinere instanties
Nadere informatieOpgaven Binair Zoeken en Invarianten Datastructuren, 4 mei 2016, Werkgroep.
Opgaven Binair Zoeken en Invarianten Datastructuren, 4 mei 2016, Werkgroep. Gebruik deze opgaven, naast die uit het boek, om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal
Nadere informatieUitgebreide uitwerking Tentamen Complexiteit, juni 2016
Uitgebreide uitwerking Tentamen Complexiteit, juni 016 Opgave 1. (3+10++7+6) a. De hoogte van de beslissingsboom (lengte van het langste pad) stelt het aantal arrayvergelijkingen in de worst case voor.
Nadere informatieEerste Huiswerk Algoritmiek 18 februari 2015, uitwisselen, WerkCollege.
Eerste Huiswerk Algoritmiek 18 februari 2015, uitwisselen, WerkCollege. Kijk een huiswerkset na met een team van twee, voorzie de uitwerking van commentaar en becijfering, en neem de nagekeken set mee
Nadere informatieZevende college algoritmiek. 23/24 maart Verdeel en Heers
Zevende college algoritmiek 23/24 maart 2017 Verdeel en Heers 1 Algoritmiek 2017/Backtracking Tweede Programmeeropdracht 0 1 2 3 0 1 2 3 4 1 2 3 4 5 2 Algoritmiek 2017/Backtracking Tweede Programmeeropdracht
Nadere informatieOpgaven Registers Concurrency, 29 nov 2018, Werkgroep.
Opgaven Registers Concurrency, 29 nov 2018, Werkgroep. Gebruik deze opgaven om de stof te oefenen op het werkcollege. Cijfer: Op een toets krijg je meestal zes tot acht opgaven. 1. Safe Integer: Van een
Nadere informatieAlgoritmen, Datastructuren en Complexiteit ( en ) Uitwerkingen
Universiteit Twente 2009-2010/2 Afdeling Informatica, Faculteit EWI Tentamen dinsdag 19 januari 2010, 8.45-12.15 Algoritmen, Datastructuren en Complexiteit (214020 en 214025) Uitwerkingen Bij dit tentamen
Nadere informatieAmorized Analysis en Union-Find Algoritmiek
Amorized Analysis en Union-Find Vandaag Amortized analysis Technieken voor tijdsanalyse van algoritmen Union-find datastructuur Datastructuur voor operaties op disjuncte verzamelingen Verschillende oplossingen
Nadere informatieZevende college complexiteit. 17 maart Ondergrens sorteren, Quicksort
College 7 Zevende college complexiteit 17 maart 2008 Ondergrens sorteren, Quicksort 1 Sorteren We bekijken sorteeralgoritmen gebaseerd op het doen van vergelijkingen van de vorm A[i] < A[j]. Aannames:
Nadere informatieOefeningen voor de oefeningenles. Oefening 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
Nadere informatieCombinatoriek groep 1
Combinatoriek groep 1 Recursie Trainingsweek, juni 009 Stappenplan homogene lineaire recurrente betrekkingen Even herhalen: het stappenplan om een recurrente betrekking van orde op te lossen: Stap 1. Bepaal
Nadere informatieSchriftelijk tentamen Datastructuren Ma 8 aug uur Met voorbeeld uitwerking
Schriftelijk tentamen Datastructuren Ma 8 aug 2011 10-13 uur Met voorbeeld uitwerking 1. Gegevens kunnen expliciet of impliciet voor computerbewerkingen worden opgeslagen; leg uit aan de hand van een vierkant
Nadere informatieProgrammeermethoden. 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 informatieBomen. 8.8 ongerichte bomen 9.4 gerichte bomen ch 10. binaire bomen. deel 2. Tiende college
10 Bomen deel 2 Tiende college 8.8 ongerichte bomen 9.4 gerichte bomen ch 10. binaire bomen 1 arboretum ongericht 8.8 tree graphs 9.4 rooted trees ch.10 binary trees 2 gericht geordend links/rechts bomen
Nadere informatieUitwerking tentamen Algoritmiek 9 juli :00 13:00
Uitwerking tentamen Algoritmiek 9 juli 0 0:00 :00. (N,M)-game a. Toestanden: Een geheel getal g, waarvoor geldt g N én wie er aan de beurt is (Tristan of Isolde) b. c. Acties: Het noemen van een geheel
Nadere informatieMinimum Opspannende Bomen. Algoritmiek
Minimum Opspannende Bomen Inhoud Het minimum opspannende bomen probleem Een principe om een minimum opspannende boom te laten groeien Twee greedy algoritmen + tijd en datastructuren: Het algoritme van
Nadere informatieVijfde 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 informatieStacks and queues. Hoofdstuk 6
Hoofdstuk 6 Stacks and queues I N T R O D U C T I E In dit hoofdstuk worden drie datastructuren stack, queue en deque behandeld. Om deze datastructuren te implementeren, worden onder andere arrays en linked
Nadere informatieUitgebreide uitwerking Tentamen Complexiteit, mei 2007
Uitgebreide uitwerking Tentamen Complexiteit, mei 007 Opgave. a. Een beslissingsboom beschrijft de werking van het betreffende algoritme (gebaseerd op arrayvergelijkingen) op elke mogelijke invoer. In
Nadere informatieToetsbundel Deel 2 Concurrency 8 oktober 2018, Gerard Tel, Niet verspreiden 1!.
Toetsbundel Deel 2 Concurrency 8 oktober 2018, Gerard Tel, Niet verspreiden 1!. Deze bundel bevat een collectie toetsvragen over het tweede deel van Concurrency. Behalve dat goede antwoorden worden gegeven,
Nadere informatieDivide & Conquer: Verdeel en Heers. Algoritmiek
Divide & Conquer: Verdeel en Heers Algoritmiek Algoritmische technieken Trucs; methoden; paradigma s voor het ontwerp van algoritmen Gezien: Dynamisch Programmeren Hierna: Greedy Vandaag: Divide & Conquer
Nadere informatieJava Programma structuur
Java Programma structuur public class Bla // div. statements public static void main(string argv[]) // meer spul Voortgezet Prog. voor KI, week 4:11 november 2002 1 Lijsten Voorbeelden 2, 3, 5, 7, 13 Jan,
Nadere informatieExamen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar juni 2011
Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar 2010-2011 21 juni 2011 **BELANGRIJK** 1. Lees eerst de volledige opgave (inclusief
Nadere informatie4EE11 Project Programmeren voor W. College 3, 2008 2009, Blok D Tom Verhoeff, Software Engineering & Technology, TU/e
4EE11 Project Programmeren voor W College 3, 2008 2009, Blok D Tom Verhoeff, Software Engineering & Technology, TU/e 1 Onderwerpen Grotere programma s ontwerpen/maken Datastructuren en algoritmes 2 Evolutie,
Nadere informatieModeluitwerking Tentamen Computationele Intelligentie Universiteit Leiden Informatica Vrijdag 11 Januari 2013
Modeluitwerking Tentamen Computationele Intelligentie Universiteit Leiden Informatica Vrijdag Januari 20 Opgave. Python Gegeven is de volgende (slechte) Python code:. def t(x): 2. def p(y):. return x*y
Nadere informatieTweede Toets Security 9 november 2016, , Educ-α.
Tweede Toets Security 9 november 2016, 8.30 10.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 je
Nadere informatieDatastructuren; (Zoek)bomen
Datastructuren; (Zoek)bomen Bomen, zoekbomen, gebalanceerde zoekbomen José Lagerberg FNWI, UvA José Lagerberg (FNWI, UvA) Datastructuren; (Zoek)bomen 1 / 50 Bomen Traversal van bomen Datastructuur van
Nadere informatie