Examen Algoritmen en Datastructuren III

Vergelijkbare documenten
Examen Algoritmen en Datastructuren III

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II

Examen Datastructuren en Algoritmen II

Derde college complexiteit. 7 februari Zoeken

Oefeningen voor de oefeningenles. Oefening 1

Datastructuren en algoritmen voor CKI

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

Programmeren in C++ Efficiënte zoekfunctie in een boek

Vijfde college complexiteit. 21 februari Selectie Toernooimethode Adversary argument

Vierde college complexiteit. 26 februari Beslissingsbomen en selectie Toernooimethode Adversary argument

Datastructuren en algoritmen voor CKI

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

Uitgebreide uitwerking Tentamen Complexiteit, juni 2017

Ieder tweetal heeft nodig: Een kopie van de slagschipspelletjes: 1. 1A, 1B voor spel A, 2B voor spel A, 3B voor spel 3

1 Kettingbreuken van rationale getallen

Opgaven Hash Tabellen Datastructuren, 15 juni 2018, Werkgroep.

DATA COMPRESSIE DATASTRUCTUREN

Kleuren met getallen Afbeeldingen weergeven

Uitwerking tentamen Analyse van Algoritmen, 29 januari

Vierde college complexiteit. 14 februari Beslissingsbomen

Recursion. Introductie 37. Leerkern 37. Terugkoppeling 40. Uitwerking van de opgaven 40

Tiende college algoritmiek. 26 april Gretige algoritmen

Eerste Toets Datastructuren 22 mei 2019, , Educ-β en Megaron.

Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar juni 2011

Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar juni, 2010

Examen Lineaire Algebra en Meetkunde Tweede zit (13:30-17:30)

Opgaven Fibonacci-getallen Datastructuren, 23 juni 2017, Werkgroep.

Python (gem=1,86) Java (gem=1,57) Enquete cursus informatica 1e bachelors oefeningen beter aansluiten bij project?

Informatica: C# WPO 7

1 Rekenen in eindige precisie

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

Examen G0U13 Bewijzen en Redeneren Bachelor 1ste fase Wiskunde. vrijdag 31 januari 2014, 8:30 12:30. Auditorium L.00.07

Datastructuren en Algoritmen

OPDRACHT Opdracht 2.1 Beschrijf in eigen woorden wat het bovenstaande PSD doet.

Activiteit 3. Zeg het opnieuw! Tekst compressie. Samenvatting. Kerndoelen. Vaardigheden. Leeftijd. Materialen

Werkbladen. Module 3: Geheimtaal. Internet. De Baas Op. Module 3, Versie 1.0

Examen Programmeren 2e Bachelor Elektrotechniek en Computerwetenschappen Faculteit Ingenieurswetenschappen Academiejaar juni, 2010

Datastructuren Uitwerking jan

Grafen. Indien de uitgraad van ieder punt 1 is, dan bevat de graaf een cykel. Indien de ingraad van ieder punt 1 is, dan bevat de graaf een cykel.

Activiteit 1. Tel de punten Binaire Getallen. Samenvatting. Kerndoelen. Vaardigheden. Leeftijd. Materiaal

In de tweede regel plaatsen we in het gereserveerde stukje geheugen een getal.

Disclaimer Het bestand dat voor u ligt, is nog in ontwikkeling. Op verzoek is deze versie digitaal gedeeld. Wij willen de lezer er dan ook op wijzen

De Hamming-code. de wiskunde van het fouten verbeteren in digitale gegevens. Benne de Weger Faculteit Wiskunde en Informatica, TU/e 1/21

Les A-03 Binaire en hexadecimale getallen

Informatica: C# WPO 9

Zevende college algoritmiek. 24 maart Verdeel en Heers

Tentamen Objectgeorienteerd Programmeren TI februari Afdeling ST Faculteit EWI TU Delft

Opgaven Heaps Datastructuren, 8 juni 2018, Werkgroep.

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

Vierde college algoritmiek. 1 maart Toestand-actie-ruimte Brute Force

Hoofdstuk 7: Werken met arrays

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

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.

Getallenleer Inleiding op codeertheorie. Cursus voor de vrije ruimte

Basis Figuren. De basis figuren zijn een aantal wiskundige figuren die je al in de wiskunde lessen hebt gekregen.

D-dag 2014 Vrijeschool Zutphen VO. D -DAG 13 februari 2014: 1+ 1 = 2. (en hoe nu verder?) 1 = 2en hoe nu verder?

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

Een spoedcursus python

Heuristieken en benaderingsalgoritmen. Algoritmiek

Binair rekenen. unplugged

Small Basic Programmeren Text Console 2

Modeluitwerking Tentamen Computationele Intelligentie Universiteit Leiden Informatica Vrijdag 11 Januari 2013

RSA. F.A. Grootjen. 8 maart 2002

Simon de schildpad J van Weert 1

Handleiding website Pax Christi

Optimalisering en Complexiteit, College 1. Han Hoogeveen, Utrecht University

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

Inleiding Programmeren 2

INFORMATICA 1STE BACHELOR IN DE INGENIEURSWETENSCAPPEN

AANVALLEN OP WES3 + LEN SPEK & HIDDE WIERINGA

1 Rekenen met gehele getallen

Transcriptie:

Derde bachelor Informatica Academiejaar 2006 2007, tweede zittijd Examen Algoritmen en Datastructuren III Naam :.............................................................................. 1. (2 pt) Linear Hashing Stel dat je 2 sleutels per emmer mag plaatsen en met een bovengrens voor de laadfactor van 0.5 werkt. Stel dat er n >> 2 sleutels in de tabel zitten. Hoe duur is 1 opzoekbewerking in het slechtste geval? Is dat een geval dat voor hashing bijzonder interessant is? Geef uitleg. Stel dat je met maar 2 emmers begint en dan de uitbreidbewerkingen toepast. Hoeveel emmers zijn er ten minste en ten hoogste als je mogelijke overflowemmers meetelt?

Voeg sleutels met de volgende hash-waarden in de gegeven volgorde toe aan een linear hashing tabel waarbij je in het begin maar 1 (lege) emmer gebruikt. Er mogen twee sleutels in één emmer zitten. Het is hier voldoende de hash-waarden in de tabel te schrijven in plaats van de sleutels (die toch al niet gegeven zijn). Toon voldoende tussenstappen om te zien wat er gebeurt en schrijf altijd expliciet welke emmer herverdeeld moet worden. De hash-waarden zijn (binair): 000000, 111100, 010110, 111111, 101010, 101100

2. (3 pt) Compressie Wij hebben in de les een bewijs gezien dat je maar 1/255ste van alle bestanden kan comprimeren. Stel nu dat elke computer ongelofelijk veel ruimte ter beschikking heeft en op voorhand al grote delen kan opslaan die in bestanden kunnen voorkomen (dus heel grote voorgëimplementeerde woordenboeken b.v. alle bestanden t.e.m. 500 bytes) zodat je op de volgende manier kan comprimeren: je slaat gewoon de index van de onderdelen op en stuurt die door. De index van de woorden kan je natuurlijk nog eens Huffman-coderen. Bepaal voor deze manier van comprimeren een bovengrens voor het aantal bestanden dat je kan comprimeren. Resultaten en bewijzen uit de les mogen geciteerd worden en moeten niet herhaald worden. Comprimeer de volgende tekst 1 keer met Huffman en 1 keer met LZ77 (zonder achteraf Huffman toe te passen). Voor LZ77 gebruik een sliding window dat duidelijk groter is dan deze kleine tekst. Wij hebben 2 manieren gezien om de LZ77-code op te schrijven. Kies voor om het even welke. abracadabra_simsalabim

Decodeer de volgende met LZW gecodeerde tekst. De nieuwe woorden in het woordenboek beginnen met nummer 256. Geef ook de woorden met code ten minste 256 in het woordenboek. Wees niet verrast als de tekst niet echt zinnig is... a 256 b c a b 257 260

3. (2 pt) Prefixcodes Gegeven een alfabet met t tekens. Stel dat je een prefixcode met w woorden wil construeren die uit deze tekens bestaan. Beschrijf een algoritme om zo n prefixcode te construeren zodat de som van de lengten van de w woorden minimaal is. Bewijs dat jouw algoritme juist is.

Pas jouw algoritme toe op t = 3 (b.v. alfabet {0, 1, 2}) en w = 15.

4. (2 pt) Extern sorteren Stel dat je de gesorteerde deelbestanden al hebt en nu de bestanden nog tot één groot bestand moet mergen. Hoe bepaal je de volgende sleutel die naar het finale bestand geschreven moet worden op een efficiënte manier? Stel dat je blokken van 8 kilobytes in één stap kan lezen en 300 MB in het geheugen ter beschikking hebt. Wat is de maximale grootte van een bestand die je dan met één keer mergen kan sorteren (in de les hebben wij dat in één stap genoemd)? Wij mergen altijd zoveel bestanden als mogelijk tegelijk in plaats van elke keer maar 2 samen te voegen tot een nieuw bestand omdat dat efficiënter is. Maar wat is precies efficiënter? Is de asymptotische complexiteit van het slechtste geval beter?

5. PRAM algoritmen (2 pt) Gegeven is een array (a 1,...,a n ) van getallen. Het probleem van de prefix-minima bestaat in het bepalen van het kleinste element uit {a 1,a 2,...,a i }, voor elke i, 1 i n. Geef een PRAM algoritme dat dit probleem oplost in Θ(log n) parallelle tijd met Θ(n) werk.

6. Communicatie-algoritmen (2 pt) (a) Geef een algoritme voor een all-to-all broadcast op een d-dimensionale hyperkubus. Bespreek de totale communicatietijd van het algoritme. (b) Geef een algoritme voor een single-node scatter op een 2-dimensionaal rooster (met wrap-around) met n = l 2 processoren. Bespreek de totale communicatietijd van het algoritme.

7. String-matching (3 pt) (a) Geef een voorbeeld waarbij de occurrence-heuristiek in het algoritme van Boyer- Moore het patroon P over P 1 posities naar links zou verschuiven (m.a.w. een negatieve verschuiving). (b) Kan de occurrence-heuristiek ook leiden tot een verschuiving over nul posities? (c) Bereken de verschuivingstabel voor de match-heuristiek van het algoritme van Boyer- Moore voor het patroon P = antenna. Gebruik het algoritme voor het zoeken naar het patroon P in de tekst T = anterrantennar. Hoeveel vergelijkingen maakt het algoritme?

NOG NIET OMDRAAIEN!