INSTITUT FOR DATALOGI, AARHUS UNIVERSITET

Relaterede dokumenter
INSTITUT FOR DATALOGI, AARHUS UNIVERSITET

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET

DATALOGISK INSTITUT, AARHUS UNIVERSITET

DATALOGISK INSTITUT, AARHUS UNIVERSITET

DATALOGISK INSTITUT, AARHUS UNIVERSITET

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET

DATALOGISK INSTITUT, AARHUS UNIVERSITET

DATALOGISK INSTITUT, AARHUS UNIVERSITET

DATALOGISK INSTITUT, AARHUS UNIVERSITET

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET

DATALOGISK INSTITUT, AARHUS UNIVERSITET

DATALOGISK INSTITUT, AARHUS UNIVERSITET

DATALOGISK INSTITUT, AARHUS UNIVERSITET

Skriftlig Eksamen Algoritmer og Datastrukturer 2 (2003-ordning)

DATALOGISK INSTITUT, AARHUS UNIVERSITET

Skriftlig Eksamen Algoritmer og Datastrukturer (DM507)

Skriftlig Eksamen DM507 Algoritmer og Datastrukturer

Danmarks Tekniske Universitet

Skriftlig Eksamen DM507 Algoritmer og Datastrukturer

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

Skriftlig Eksamen Algoritmer og Datastrukturer (DM507)

Sammenhængskomponenter i grafer

Danmarks Tekniske Universitet

Danmarks Tekniske Universitet

DATALOGISK INSTITUT, AARHUS UNIVERSITET

DATALOGISK INSTITUT, AARHUS UNIVERSITET

Danmarks Tekniske Universitet

DATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

Danmarks Tekniske Universitet

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

Danmarks Tekniske Universitet

DATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

Grafer og graf-gennemløb

Grafer og graf-gennemløb

DATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET. Science and Technology EKSAMEN. Grundkurser i Datalogi. Algoritmer og Datastrukturer 1 (2003-ordning)

DATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

Grafer og graf-gennemløb

Grafer og graf-gennemløb

DATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

Grafer og graf-gennemløb

DATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

Danmarks Tekniske Universitet

Mindste udspændende træ. Mindste udspændende træ. Introduktion. Introduktion

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

Danmarks Tekniske Universitet

Mindste udspændende træ

DATALOGISK INSTITUT, AARHUS UNIVERSITET. Det Naturvidenskabelige Fakultet EKSAMEN. Grundkurser i Datalogi

Mindste udspændende træ. Mindste udspændende træ. Introduktion. Introduktion

Danmarks Tekniske Universitet

INSTITUT FOR DATALOGI, AARHUS UNIVERSITET EKSAMEN. Grundkurser i Datalogi. Algoritmer og Datastrukturer 1 (2003-ordning)

Algoritmeanalyse. Øvre grænse for algoritme. Øvre grænse for problem. Nedre grænse for problem. Identificer essentiel(le) operation(er)

Algoritmer og datastrukturer Course No Cheat Sheet May 15, 2012

Skriftlig Eksamen Kombinatorik, sandsynlighed og randomiserede algoritmer (DM528)

Minimum udspændende Træer (MST)

Skriftlig Eksamen Kombinatorik, sandsynlighed og randomiserede algoritmer (DM528)

Skriftlig Eksamen Algoritmer og Sandsynlighed (DM538)

Skriftlig Eksamen Introduktion til lineær og heltalsprogrammering (DM515)

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti.

Skriftlig Eksamen Diskret Matematik (DM528)

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti.

Reeksamen i Diskret Matematik

Danmarks Tekniske Universitet

Orienterede grafer. Orienterede grafer. Orienterede grafer. Orienterede grafer

Korteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti.

Sommeren 2001, opgave 1

02105 Eksamensnoter. Lasse Herskind S maj Sortering 3

Orienterede grafer. Introduktion Repræsentation Søgning Topologisk sortering og DAGs Stærke sammenhængskomponenter Implicitte grafer.

Danmarks Tekniske Universitet

Skriftlig Eksamen Algoritmer og Datastrukturer 1. Datalogisk Institut Aarhus Universitet. Mandag den 22. marts 2004, kl

Prioritetskøer og hobe. Philip Bille

Skriftlig Eksamen Introduktion til lineær og heltalsprogrammering (DM515)

DM02 Kogt ned. Kokken. Januar 2006

Orienterede grafer. Orienterede grafer. Orienterede grafer. Vejnetværk

Skriftlig Eksamen Algoritmer og Datastrukturer 1. Datalogisk Institut Aarhus Universitet

Oplæg og øvelser, herunder frugt og vand Gerth Stølting Brodal

Minimum udspændende Træer (MST)

Minimum udspændende Træer (MST)

Algoritmer og Datastrukturer 2 (Sommer 2004)

P2-gruppedannelsen for Mat og MatØk

Mindste udspændende træ

Prioritetskøer. Prioritetskøer. Prioritetskøer. Prioritetskøer

Symmetrisk Traveling Salesman Problemet

Eksamen i Diskret Matematik

Prioritetskøer. Prioritetskøer Træer og hobe Repræsentation af hobe Algoritmer på hobe Hobkonstruktion Hobsortering. Philip Bille

Eksamen i Diskret Matematik

Transkript:

INSTITUT FOR DTLOGI, RHUS UNIVERSITET Science and Technology EKSMEN ntal sider i opgavesættet (incl. forsiden): (elleve) Eksamensdag: Mandag den. august 07, kl. 9.00-.00 Tilladte medbragte hjælpemidler: lle sædvanlige hjælpemidler (lærebøger, notater, lommeregner). Computer må ikke medbringes. Materiale der udleveres til eksaminanden: OPGVETEKSTEN BEGYNDER PÅ NÆSTE SIDE ooo

Eksamen ugust 07 Side af sider Opgave (%) Bemærk: Bagerst i eksamenssættet findes sider til at angive svarene til opgave på og som afleveres som del af eksamensbesvarelsen. Betragt nedenstående vægtede orienterede graf. Det antages, at grafen er givet ved incidenslister, hvor incidenslisterne er sorteret alfabetisk. B C D E 0 K L M N O Spørgsmål a: ngiv et BFS-træ for ovenstående graf, hvor BFS-gennemløbet starter i knuden. ngiv kanterne i BFS-træet, BFS-numrene for knuderne, og rækkefølgen knuderne bliver indsat i køen Q i BFS-algoritmen. Spørgsmål b: ngiv et DFS-træ for ovenstående graf, hvor DFS-gennemløbet starter i knuden, og en DFS-nummerering af knuderne. ngiv for hver knude discovery time og finishing time. Marker for hver kant om det er en tree edge (T), back edge (B), cross edge (C) eller forward edge (F). Spørgsmål c: ngiv de stærke sammenhængskomponenter i ovenstående graf. For hver komponent angiv knuderne i komponenten. Spørgsmål d: ngiv et korteste veje (SSSP) træ for ovenstående graf, når korteste veje beregningen sker med hensyn til startknuden. For hver knude v angiv også afstanden fra startknuden til v, og angiv rækkefølgen knuderne tages ud af prioritetskøen Q i Dijkstra s algoritme. B C D E 0 7 7 0 9 K L M N O Spørgsmål e: ngiv kanterne i et minimum udspændende træ(mst) for ovenstående uorienterede graf med vægte på kanterne. ngiv i hvilken rækkefølge knuderne bliver taget ud af prioritetskøen Q i Prim s algoritme, når denne starter i knuden.

Eksamen ugust 07 Side af sider Opgave (%) Bemærk: Bagerst i eksamenssættet findes en side til at angive svarene til opgave på og som afleveres som del af eksamensbesvarelsen. Betragt nedenstående netværk med de angivne kapaciteter på kanterne. B s 9 C 7 D t E F Spørgsmål a: ngiv en maksimal strømning (maximum flow) fra s til t i netværket (angiv for hver kant strømningen langs kanten), angiv værdien af en maksimal strømning, og angiv et snit (cut) (dvs. opdeling af knuderne i to disjunkte mængder) hvor kapaciteten af snittet er lig værdien af en maksimal strømning. Spørgsmål b: Betragt Edmonds-Karp algoritmen anvendt på ovenstående graf til beregning af en maksimal strømning. ngiv de forbedrende stier (augmenting paths) der anvendes under udførslen af Edmonds-Karp algoritmen. For hver forbedrende sti angiv knuderne på stien og strømningen, man forbedrer med, langs stien.

Eksamen ugust 07 Side af sider Opgave (0%) I denne opgave antages at vi har givet n punkter P = {p,...,p n } i planen. For alle par af punkter (p i,p j ) lader vi d i,j betegne afstanden mellem punkterne. For en givet kommunikationsradius R, så kan p i og p j kommunikere direkte hvis d i,j R, og p i og p j kan kommunikere (direkte eller indirekte) hvis der findes en sti p i,q,...,q k,p j blandt punkterne i P således at alle par af hinanden efterfølgende punkter på stien kan kommunikere direkte. I nedenstående eksempel er direkte kommunikation (for kommunikationsradiusen R) angivet ved kanter mellem punkterne. p og p kan kommunikere langs stien p,p,p,p, hvorimod p og p ikke kan kommunikere da der ingen sti er fra p til p. p p p p p p R Spørgsmål a: Beskriv en algoritme der givet n punkter P, deres indbyrdes afstande, og en kommunikationsradius R, og to punkter p i og p j i P, beregner den korteste kommunikationssti mellem p i og p j, d.v.s. en sti med færrest mulig punkter med direkte kommunikation. ngiv algoritmens udførselstid. Spørgsmål b: Beskriv en algoritme der givet n punkter P og deres indbyrdes afstande, finder den mindste kommunikationsradius R, således at alle par af punkter kan kommunikkere sammen. ngiv algoritmens udførselstid. Spørgsmål c: Beskriv en algoritme der givet n punkter P, deres indbyrdes afstande, og en kommunikationsradius R, og to punkter p i og p j i P uden direkte kommunikation, afgør om der findes to kommunikationsstier mellem p i og p j som ingen punkter har tilfælles (ud over p i og p j ). ngiv algoritmens udførselstid. Spørgsmål d: Beskriv en algoritme der givet n punkter P, deres indbyrdes afstande, og to punkter p i og p j i P, finder den mindste kommunikationsradius R, således at p i og p j kan kommunikere direkte eller der findes to kommunikationsstier mellem p i og p j som ingen punkter har tilfælles (ud over p i og p j ). ngiv algoritmens udførselstid.

Eksamen ugust 07 Side af sider Opgave (%) Givet to strenge P[..m] og T[..n], så forekommer P som en delsekvens af T, hvis der findes positioner i,i,...,i m, i T hvor i < i < < i m n og P[j] = T[i j ] for j =..m. F.eks. er abc en delsekvens af axbcy, med i =, i = og i =. Spørgsmål a: ngiv en algoritme der afgør om en streng P[..m] er en delsekvens af en streng T[..n]. ngiv algoritmens udførselstid. Givet to strenge P[..m] og T[..n] ønsker vi at finde positioner i < i < < i m for en forekomst af P som delsekvens af T, hvor P forekommer som et minimalt antal sammenhængende blokke, dvs. således at {j j < m i j + < i j+ } er mindst mulig. F.eks. så forekommer P = abcd som delsekvens af T = aabxccd på følgende fire måder: aabxccd, aabxccd, aabxccd, og aabxccd. Disse består af en opdeling af P i henholdsvis,, og blokke, hvorfor det er den sidste forekomst af P vi er interesseret i at finde. For 0 i m og 0 j n lader vi C(i,j) betegne det minimale antal blokke P[..i] skal deles op i for at forekomme som en blokket delsekvens af T[..j]. Hvis P[..i] ikke forekommer som en delsekvens af T[..j], så lader vi C(i,j) = +. C(i, j) kan beskrives ved følgende rekursionsformel: C(i,j) = 0 hvis i = 0 + hvis i > j C(i,j ) hvis i j P[i] T[j] min(c(i,j ), +C(i d,j d)) hvis i j P[i] = T[j] hvor d = max{l l i P[i l+..i] = T[j l+..j]} Spørgsmål b: Udfyld nedenstående tabel for C(i,j) for P = abc og T = bacbabbc. C(i,j) 0 7 0 Spørgsmål c: ngiv en algoritme baseret på dynamisk programmering, der givet strenge P[..m] og T[..n], beregner det minimale antal blokke i en forekomst af P som delsekvens i T, dvs. beregner C(m, n). ngiv algoritmens udførselstid. Spørgsmål d: Udvid algoritmen til at rapportere positionerne i T for en minimal blokket forekomst af P. ngiv algoritmens udførselstid.

Eksamen ugust 07 Side af sider Opgave (%) Givet to strenge og B af længde n, så siges B at være et præfiks-suffiks swap af, hvisb = [k..n][..k ] foretk, hvor k n. Specielt erb = etpræfiks-suffiks swap af. F.eks. er B = deabc et præfiks-suffiks swap af = abcde. I det følgende kan det antages at strengene er over et alfabet med O() tegn og at et suffikstræ for en streng af længde n over et alfabet med O() tegn kan konstrueres i O(n) tid. Spørgsmål a: Beskriv enalgoritme, der givet tostrenge ogb aflængden, afgørom B er et præfiks-suffiks swap af. ngiv algoritmens udførselstid. En ideel besvarelse opnår udførselstid O(n). Spørgsmål b: Beskriv en algoritme, der givet to strenge P og T af henholdsvis længde m og n, m n, afgør om et præfiks-suffiks swap af P forekommer som en delstreng i T. F.eks. forekommer et præfiks-suffix swap af P = abcde i T = abcdeabced. ngiv algoritmens udførselstid. En ideel besvarelse opnår udførselstid O(n).

Årskort: Navn: Eksamen ugust 07 Side 7 af sider Opgave Svar Spørgsmål a: BFS B C D E K L M N O Indsættelser i Q: Spørgsmål b: DFS B C D E K L M N O

Eksamen ugust 07 Side af sider ( blank side )

Årskort: Navn: Eksamen ugust 07 Side 9 af sider Opgave Svar Spørgsmål c: Stærke sammenhængskomponenter: Spørgsmål d: SSSP B C D E 0 K L M N O Udtagelse fra Q: Spørgsmål e: MST B C D E 0 7 7 0 9 K L M N O Udtagelse fra Q:

Eksamen ugust 07 Side 0 af sider ( blank side )

Årskort: Navn: Eksamen ugust 07 Side af sider Opgave Svar Spørgsmål a: B s 9 C 7 D t E F Værdien af strømning: Minimal snit: Spørgsmål b: Forbedring Forbedrende sti