De onderdelen die ik niet behandel: zie diktaat/hand-out. Onderdelen 5b en 6b zijn erg slecht gemaakt bij het tentamen. ik heb ze niet meegewogen (alleen als bonus). 1 b) lineaire structuur, waar we een een kant bij kunnen. LIFO. isleeg, push, pop implementatie is niet gebruik! array (of vector) met index naar max emelement, of een lineaire pointerlijst, met een pointer naar de top. graag met klein plaatje. 2 a) ik bedoel hier dat je beschrijft welke knopen er op de stapel staan tijdens het algoritme. Dus niet het algoritme naverteld. Kijk naar het pad in de boom van de wortel naar de bezochte knoop. Bij pre-orde staan de rechter kinderen van de knopen waar we linksaf zijn gegaan op de stapel. Deze knopen staan zelf niet op het pad. Bij de post-orde staan de knopen waar we linksaf zijn gegaan zelf op de stapel. Deze zijn precies een keer bezocht. 2 b) ik geloof dat ik hier twee weken lang op ben teruggekomen op college. zucht. 3 b) Beschrijf de operaties aangenomen dat je al kunt ritsen. Dus delete-max: verwijder de wortel van de boom (het maximum) en rits de linker en rechter deelboom tot een nieuwe lefttist tree. Bij increase key niet verwisselen met de ouder. Dat is bij benary heap wel efficient, hier niet altijd. 4 a) Het is een bzb met gekleurde knopen. wortel is zwart. geen rood kind van rode knoop. aantal zwarte knopen op elk pad van wortel naar blad is gelijk. 5 a) Begin in knoop 2 en voer Dijkstra uit. Het legt eerst de afstand van knoop 3 vast, dan van knoop 1, en dan pas komt knoop 4 aan de beurt. zo wordt niet ontdekt dat er nog een verbinding van 4 naar 1 is, die een kortere afstand naar 1 levert. 5 b) Drie geneste loops. De buitenste loop voegt steeds een knoop toe die meegenomen wordt als knoop dat op een pad mag liggen (anders dan begin of eind). 6 De codeboom is een zogenaamde trie. De takken hebben letters, de knopen hebben de codenummers die hoort bij de string die je van wortel naar knoop afleest. 6 b) Decoderen start met een onbekende code, dus niet die uit onderdeel a. De decoder leert zelf de code, maar loopt daarbij een stapje achter. Dat zorgt in dit geval bij '11' voor een aparte situatie, omdat '11' dan nog niet in de codeboom staat. Maar dat kan opgelost worden omdat we weten dat '11' ook de code is die we nog moeten leren. Zie diktaat.