• No results found

Opgave3:Greedyalgorithms Opgave2:DynamischProgrammeren Opgave1:Grafen Algoritmiek(INFOAL)18december2006

N/A
N/A
Protected

Academic year: 2021

Share "Opgave3:Greedyalgorithms Opgave2:DynamischProgrammeren Opgave1:Grafen Algoritmiek(INFOAL)18december2006"

Copied!
2
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

Departement Informatica en Informatiekunde, Faculteit B`etawetenschappen, UU.

In elektronische vorm beschikbaar gemaakt door de TBC van A−Eskwadraat.

Het college INFOAL werd in 2006/2007 gegeven door Hans Bodlaender.

Algoritmiek (INFOAL) 18 december 2006

N.B. U mag tijdens het tentamen maximaal 4 kantjes A4 eigen aantekeningen raadplegen. Deze dient U met Uw werk in te leveren, en kan U later weer ophalen.

Elk van de vragen l, 2a, 2b, 3 en 4 telt voor twee punten.

Veel succes!

Opgave 1: Grafen

Een ongerichte graaf G = (V, E) heet kubisch als elke knoop in G graad precies drie heeft. Hoeveel tijd kost het om te testen of een graaf kubisch is, als de graaf gegeven is met de adjacency-list datastructuur? Hoeveel tijd kost het om te testen of een graafkubisch is, als de graaf gegeven is met de adjacency matrix datastructuur? Licht Uw antwoorden kort maar helder toe.

Opgave 2: Dynamisch Programmeren

Gegeven zij een verzameling van n positieve gehele getallen A = {a[1], . . . , a[n]} en een positief geheel getal B. We willen bepalen hoeveel deelverzamelingen van A som precies gelijk aan B hebben. Dit doen we met dynamisch programmeren.

We schrijven: M (i, C) als het aantal deelverzamelingen van {a[1], . . . , a[i]} met som precies C.

a) Geef een recurrente betrekking voor M (i, C). Vergeet de basisgevallen niet.

b) Geef een dynamisch programmeer algoritme dat het probleem oplost. Uw algoritme moet in O(nB) tijd werken.

In het geval het U niet lukte om een recurrente betrekking op te stellen in onderdeel a), dan mag U de volgende (op zich incorrecte) betrekking gebruiken.

M (0, C) = 0 voor alle C ∈ N M (i, C) =

(M (i − 1, C) + 1 als ai> C max{M (i − 1, C), M (i, C − ai) + 1} als ai< C

Opgave 3: Greedy algorithms

Stel P1, . . . , Pn zijn n programma’s die moeten worden opgeslagen op een disk. Programma Pi kost si kilobytes opslagruimte, en de capaciteit van de disk is D kilobytes, met D <Pn

i=1si. Stel we willen het aantal programma’s op de disk maximaliseren. Bekijk het volgende greedy algoritme: kies programma’s in volgorde van niet-dalende waarde si, totdat ze niet meer erbij passen. Geeft dit algoritme een optimale oplossing?

Bewijs Uw antwoord.

(2)

Opgave 4: Divide and conquer / Simplification

Stel we hebben twee gesorteerde rijen integers A[1 · · · n] en B[1 · · · n]. Elke rij integers heeft precies n verschillende getallen, en is gesorteerd in stijgende volgorde.

We willen een algoritme dat het volgende probleem oplost: we zoeken indices i, j ∈ {1, . . . , n}

zodat A[i] + B[j] = i.

Geef een algoritme dat dit probleem in O(n) tijd oplost. Waarom is Uw algoritme correct?

Referenties

GERELATEERDE DOCUMENTEN

Geef een polynomiale reductie van het ONAFHANKELIJKE DEELVERZAMELING pro- bleem naar het probleem, om te bepalen voor gegeven graaf G = (V, E), en gegeven integer l, of G een kliek

Bij iedere vraag staat ´ e´ en expressie vet gedruk. Daaronder staan drie expressies die alleen maar verschillen in hoeveelheid en plaatsing van ronde haakjes. Kies die expressie

BSP-bomen kunnen voor tenminste twee doeleinden worden gebruikt: (1) bij ray tracing, om ray/object intersectietests te versnellen, en (2) bij projectieve methoden, om een

De wiskundige be- werkingen en de spelregels van de wiskunde zijn weliswaar niet geheel en al onwrikbaar maar lijken toch veel meer eeuwigheidswaar- de te hebben dan veel regels

Echter, in de loop van de 15de eeuw veranderde het beeld dat men van de gebeurtenissen in 1296 had. Het effect van het reeds genoemde historielied over de verkrachting wordt dan in

Het algoritme van Fleury construeert in een Eulerse multigraaf een Euler cykel stuksgewijs. , b n ) door een kant verbonden zijn dan en slechts dan als ze slechts in een

(i) Een graaf bestaat uit een verzameling van hoekpunten en een verzameling van ribben, waarbij een ribbe door twee verschillende hoekpunten gegeven is (die door deze ribbe

De minimaal haalbare weerstand geeft informatie over hoe goed het bestaande metronetwerk ge¨ equipeerd is voor de gewenste belasting. Het is interessant om dit toe te passen op