Mindste udspændende træ
|
|
- Pernille Ibsen
- 8 år siden
- Visninger:
Transkript
1 Mindste udspændende træ Introduktion Repræsentation af vægtede grafer Egenskaber for mindste udspændende træer Prims algoritme Kruskals algoritme Philip Bille
2 Mindste udspændende træ Introduktion Repræsentation af vægtede grafer Egenskaber for mindste udspændende træer Prims algoritme Kruskals algoritme
3 Introduktion Vægtede grafer. Vægt w(e) på hver kant e i G. Udspændende træ. Delgraf T af G over alle knuder der er sammenhængende og acyklisk. Mindste udspændende træ (MST). Udspændende træ af minimal samlet vægt Graf G
4 Introduktion Vægtede grafer. Vægt w(e) på hver kant e i G. Udspændende træ. Delgraf T af G over alle knuder der er sammenhængende og acyklisk. Mindste udspændende træ (MST). Udspændende træ af minimal samlet vægt Ikke sammenhængende
5 Introduktion Vægtede grafer. Vægt w(e) på hver kant e i G. Udspændende træ. Delgraf T af G over alle knuder der er sammenhængende og acyklisk. Mindste udspændende træ (MST). Udspændende træ af minimal samlet vægt Sammenhængende og cyklisk
6 Introduktion Vægtede grafer. Vægt w(e) på hver kant e i G. Udspændende træ. Delgraf T af G over alle knuder der er sammenhængende og acyklisk. Mindste udspændende træ (MST). Udspændende træ af minimal samlet vægt Sammenhængende og acyklisk = udspændende træ T Vægt af T = =
7 Introduktion Vægtede grafer. Vægt w(e) på hver kant e i G. Udspændende træ. Delgraf T af G over alle knuder der er sammenhængende og acyklisk. Mindste udspændende træ (MST). Udspændende træ af minimal samlet vægt Mindste udspændende træ T Vægt af T = = 0
8 Anvendelser Netværk design. Computer, vej, telefon, elektrisk, kredsløb, kabel tv, hydralisk, Approksimationsalgoritmer. Handelsrejsendes problem, steiner træer. Andre anvendelser. Meteorologi, kosmologi, biomedicinsk analyse, kodning, billedanalyse, Se f. eks.
9 Mindste udspændende træ Introduktion Repræsentation af vægtede grafer Egenskaber for mindste udspændende træer Prims algoritme Kruskals algoritme
10 Repræsentation af vægtede grafer Incidensmatrix og incidensliste. Tilsvarende for orienterede grafer
11 Mindste udspændende træ Introduktion Repræsentation af vægtede grafer Egenskaber for mindste udspændende træer Prims algoritme Kruskals algoritme
12 Egenskaber for MST Simplificerende antagelse. Alle kantvægte i G er forskellige. G er sammenhængende MST eksisterer og er unik.
13 Snitegenskab Def. Et snit er en opdeling af knuderne i to (ikke-tomme) mængder. Def. En snitkant i et snit er en kant med et endepunkt i hver side af snittet. Snitegenskab. For et vilkårligt snit, er den letteste snitkant med i MST. snitkanter
14 Snitegenskab Def. Et snit er en opdeling af knuderne i to (ikke-tomme) mængder. Def. En snitkant i et snit er en kant med et endepunkt i hver side af snittet. Snitegenskab. For et vilkårligt snit, er den letteste snitkant med i MST. Bevis. Modbevis. Antag den letteste snitkant e for et snit ikke er med i MST. Hvis vi tilføjer e til MST laver vi en kreds. Der er en anden snitkant f i kredsen. Hvis vi fjerner f og tilføjer e har vi et nyt udspændende træ T. Da w(e) < w(f) er w(t) < w(mst). e f
15 Kredsegenskab Kredsegenskab. For en vilkårlig kreds, er den tungeste kant i kreds ikke med i MST. Bevis. Modbevis Antag tungeste kant f på en kreds K er indeholdt i MST. Der er lettere kant e i K, der ikke er indeholdt i MST. Hvis vi fjerner f og tilføjer e har vi et nyt udspændende træ T. Da w(f) > w(e) er w(t) < w(mst). kreds K e f
16 Egenskaber for MST Snitegenskab. For et vilkårligt snit, er den letteste snitkant med i MST. Kredsegenskab. For en vilkårlig kreds, er den tungeste kant i kreds ikke med i MST. e f e f
17 Mindste udspændende træ Introduktion Repræsentation af vægtede grafer Egenskaber for mindste udspændende træer Prims algoritme Kruskals algoritme
18 Prims algoritme Start ved en knude s og opbyg et træ T fra s. I hvert skridt, tilføj letteste kant med netop et endepunkt i T. Stop når T har n-1 kanter. s
19 2 2 3 s
20 Prims algoritme Start ved en knude s og opbyg et træ T fra s. I hvert skridt, tilføj letteste kant med netop et endepunkt i T. Stop når T har n-1 kanter. Opgave. Håndkør Prims algoritme fra knude 1 på følgende graf
21 Prims algoritme Lemma. Prims algoritme beregner MST. Bevis. Kig på snit mellem besøgte og ikke besøgte knuder i et skridt af algoritme. Vi tilføjer letteste snitkant e til T. Snitegenskab kanten e er i MST T er MST efter n-1 skridt. s
22 Prims algoritme Implementation. Hvordan implementerer vi Prims algoritme? Udfordring. Find den letteste kant med netop et endepunkt i T. s
23 Prims algoritme Implementation. Vedligehold knuder uden for snit i prioritetskø. Nøgle af knude v = letteste kant der forbinder v til træet. I hvert skridt: Find letteste kant = EXTRACT-MIN Opdater vægt af naboer af ny knude med DECREASE-KEY. 11 s
24 Prims algoritme PRIM(G, s) for alle knuder v V key[v] = π[v] = null INSERT(P,v) DECREASE-KEY(P,s,0) while (P ) u = EXTRACT-MIN(P) for alle naboer v af u if (v P and w(u,v)<key[v]) DECREASE-KEY(P,v,w(u,v)) π[v] = u Tid. n EXTRACT-MIN n INSERT O(m) DECREASE-KEY Samlet tid med min-hob. O(m log n)
25 Prims algoritme Theorem. Prims algoritme implementeret med en min-hob beregner en MST i O(m log n) tid. Grådighed. Prims algoritme er eksempel på en grådig algoritme. I hvert skridt, træf det optimale lokale valg. global optimal løsning.
26 Prims algoritme Prioritetskøer og Prim. Kompleksitet af Prims algoritme afhænger af prioritetskø: n INSERT n EXTRACT-MIN m + 1 DECREASE-KEY Prioritetskø INSERT EXTRACT-MIN DECREASE-KEY Total tabel O(1) O(n) O(1) O(n binær hob O(log n) O(log n) O(log n) O(m log n) Fibonacci hob O(1) O(log n) O(1) O(m + n log n) = amortiseret køretid
27 Mindste udspændende træ Introduktion Repræsentation af vægtede grafer Egenskaber for mindste udspændende træer Prims algoritme Kruskals algoritme
28 Kruskals algoritme Kig på kanter fra letteste til tungeste. I hvert skridt, tilføj kant til T hvis den ikke medfører en kreds i T. Stop når T har n-1 kanter
29
30 Kruskals algoritme Lemma. Kruskals algoritme beregner MST. Bevis. Algoritme kigger på kanter fra letteste til tungest. To tilfælde for en kant e = (u,v). Tilfælde 1. e danner kreds og bliver ikke tilføjet til T. e er tungeste kant på kreds. Kredsegenskab e er ikke med i MST. Tilfælde 2. e danner ikke kreds og bliver tilføjet til T. e er letteste kant på snittet givet ved sammenhængskomponenter for u og v. Snitegenskab e er med i MST. T er MST når n-1 kanter er tilføjet.
31 Kruskals algoritme Implementation. Hvordan implementerer vi Kruskals algoritme? Udfordring. Afgør om en kant danner en kreds
32 Kruskals algoritme Implementation. Vedligehold kanter i T i datastruktur til dynamiske sammenhængskomponenter. I hvert skridt: Undersøg om kant danner en kreds = CONNECTED. Tilføj ny kant = INSERT
33 Kruskals algoritme KRUSKAL(G) Tid. Sorter kanter INIT(n) for alle kanter (u,v) i sort. orden if (CONNECTED(u,v)) INSERT(u,v) return indsatte kanter Sortering af m kanter. 1 INIT m CONNECTED m INSERT Samlet tid med vægtet forening. O(m log m + n + m log n) = O(m log n).
34 Kruskals algoritme Theorem. Kruskals algoritme implementeret med vægtet forening beregner en MST i O(m log n) tid. Grådighed. Kruskals algoritme er også eksempel på en grådig algoritme.
35 Mindste udspændende træ Hvad er det bedste algoritme til MST? Kan man løse problemet i lineær tid? År Tid Opdaget af??? O(n log m) Jarnik, Prim, Dijkstra, Kruskal, Boruvka,? 19 O(m log log n) Yao 19 O(m log* n) Fredman, Tarjan 199 O(m) Karger, Klein, Tarjan 2000 O(nɑ(m,n)) Chazelle 2002 optimal Pettie, Ramachandran 20xx O(m)??? = randomiseret køretid
36 Mindste udspændende træ Introduktion Repræsentation af vægtede grafer Egenskaber for mindste udspændende træer Prims algoritme Kruskals algoritme
Mindste udspændende træ. Mindste udspændende træ. Introduktion. Introduktion
Philip Bille Introduktion (MST). Udspændende træ af minimal samlet vægt. Introduktion (MST). Udspændende træ af minimal samlet vægt. 0 0 Graf G Ikke sammenhængende Introduktion (MST). Udspændende træ af
Læs mereMindste udspændende træ
Mindste udspændende træ Introduktion Repræsentation af vægtede grafer Egenskaber for mindste udspændende træer Prims algoritme Kruskals algoritme Philip Bille Mindste udspændende træ Introduktion Repræsentation
Læs mereMindste udspændende træ. Mindste udspændende træ. Introduktion. Introduktion
Philip Bille Introduktion (MST). Udspændende træ af minimal samlet vægt. Introduktion (MST). Udspændende træ af minimal samlet vægt. 0 0 Graf G Ikke sammenhængende Introduktion (MST). Udspændende træ af
Læs mereMinimum udspændende Træer (MST)
Minimum udspændende Træer (MST) Træer Et (frit/u-rodet) træ er en uorienteret graf G = (V, E) som er Sammenhængende: der er en sti mellem alle par af knuder. Acyklisk: der er ingen lukket kreds af kanter
Læs mereMinimum udspændende Træer (MST)
Minimum udspændende Træer (MST) Træer Et (frit/u-rodet) træ er en uorienteret graf G = (V, E) som er Sammenhængende: der er en sti mellem alle par af knuder. Acyklisk: der er ingen kreds af kanter. Træ
Læs mereForén og find. Introduktion Hurtig find Hurtig forening Vægtet forening Stikompression Dynamiske sammenhængskomponenter.
Forén og find Introduktion Hurtig find Hurtig forening Vægtet forening Stikompression Dynamiske sammenhængskomponenter Philip Bille Forén og find Introduktion Hurtig find Hurtig forening Vægtet forening
Læs mereMinimum udspændende Træer (MST)
Minimum udspændende Træer (MST) Træer Et (frit/u-rodet) træ er en uorienteret graf G = (V, E) som er Sammenhængende: der er en sti mellem alle par af knuder. Acyklisk: der er ingen kreds af kanter. Træer
Læs mereKorteste veje. Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje på DAGs. Philip Bille
Korteste veje Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje på DAGs Philip Bille Korteste veje Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje
Læs mereForén og find. Introduktion Hurtig find Hurtig forening Vægtet forening Stikompression Dynamiske sammenhængskomponenter.
Forén og find Introduktion Hurtig find Hurtig forening Vægtet forening Stikompression Dynamiske sammenhængskomponenter Philip Bille Forén og find Introduktion Hurtig find Hurtig forening Vægtet forening
Læs mereKorteste veje. Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje på DAGs. Philip Bille
Korteste veje Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje på DAGs Philip Bille Korteste veje Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje
Læs mereOrienterede grafer. Orienterede grafer. Orienterede grafer. Vejnetværk
Philip Bille Orienteret graf (directed graph). Mængde af knuder forbundet parvis med orienterede kanter. Vejnetværk Knude = vejkryds, kant = ensrettet vej. deg + (6) =, deg - (6) = sti fra til 6 8 7 9
Læs mereKorteste veje. Korteste veje. Introduktion. Introduktion. Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje på DAGs
Kortete veje Egenkaber for kortete veje Dijktra algoritme Kortete veje på DAG Kortete veje Egenkaber for kortete veje Dijktra algoritme Kortete veje på DAG Philip Bille Introduktion Kortete veje. Givet
Læs merePrioritetskøer og hobe. Philip Bille
Prioritetskøer og hobe Philip Bille Plan Prioritetskøer Træer Hobe Repræsentation Prioritetskøoperationer Konstruktion af hob Hobsortering Prioritetskøer Prioritetskø Vedligehold en dynamisk mængde S af
Læs mereOrienterede grafer. Introduktion Repræsentation Søgning Topologisk sortering og DAGs Stærke sammenhængskomponenter Implicitte grafer.
Orienterede grafer Introduktion Repræsentation Søgning Topologisk sortering og DAGs Stærke sammenhængskomponenter Implicitte grafer Philip Bille Orienterede grafer Introduktion Repræsentation Søgning Topologisk
Læs mereOrienterede grafer. Orienterede grafer. Orienterede grafer. Orienterede grafer
Philip Bille Orienteret graf. Mængde af knuder forbundet parvis med orienterede kanter. deg + (7) =, deg - (7) = Lemma. v V deg - (v) = v V deg + (v) = m. Bevis. Hver kant har netop en startknude og slutknude.
Læs merePrioritetskøer. Prioritetskøer Træer og hobe Repræsentation af hobe Algoritmer på hobe Hobkonstruktion Hobsortering. Philip Bille
Prioritetskøer Prioritetskøer Træer og hobe Repræsentation af hobe Algoritmer på hobe Hobkonstruktion Hobsortering Philip Bille Prioritetskøer Prioritetskøer Træer og hobe Repræsentation af hobe Algoritmer
Læs mereDefinition : Et træ er en sammenhængende ikke-orienteret graf uden simple kredse. Sætning : En ikke-orienteret graf er et træ hvis og kun hvis der er
Definition : Et træ er en sammenhængende ikke-orienteret graf uden simple kredse. Sætning : En ikke-orienteret graf er et træ hvis og kun hvis der er en unik simpel vej mellem ethvert par af punkter i
Læs mereKorteste veje. Korteste veje. Introduktion. Introduktion. Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje på DAGs
Kortete veje Egenkaber for kortete veje Dijktra algoritme Kortete veje på DAG Kortete veje Egenkaber for kortete veje Dijktra algoritme Kortete veje på DAG Philip Bille Introduktion Kortete veje. Givet
Læs mereKorteste veje. Korteste veje. Introduktion. Introduktion. Introduktion Egenskaber for korteste veje Dijkstras algoritme Korteste veje på DAGs
Kortete veje Egenkaber for kortete veje Dijktra algoritme Kortete veje på DAG Kortete veje Egenkaber for kortete veje Dijktra algoritme Kortete veje på DAG Philip Bille Introduktion Kortete veje. Givet
Læs mereINSTITUT FOR DATALOGI, AARHUS UNIVERSITET
INSTITUT FOR ATALOGI, AARHUS UNIVERSITET Science and Technology EKSAMEN Algoritmer og atastrukturer (00-ordning) Antal sider i opgavesættet (incl. forsiden): (elleve) Eksamensdag: Fredag den. august 0,
Læs merePrioritetskøer. Prioritetskøer. Prioritetskøer. Prioritetskøer
Philip Bille. Vedligehold en dynamisk mængde S af elementer. Hver element x er tilknyttet en nøgle x.key og satellitdata x.data. MAX(): returner element med største nøgle. EXTRACTMAX(): returner og fjern
Læs mereEt generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Ideen er simpel:
Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Ideen er simpel: Opbyg løsningen skridt for skridt ved hele tiden af vælge lige
Læs merePrioritetskøer. Prioritetskøer. Prioritetskøer. Prioritetskøer
Philip Bille (priority-queues). Vedligehold en dynamisk mængde S af elementer. Hver element x er tilknyttet en nøgle x.key og satellitdata x.data. MAX(): returner element med største nøgle. EXTRACTMAX():
Læs mereDanmarks Tekniske Universitet
side af sider Danmarks Tekniske Universitet Skriftlig prøve, den 6. maj 0. Kursusnavn: Algoritmer og datastrukturer Kursus nr. 06. Tilladte hjælpemidler: Skriftlige hjælpemidler. Varighed: timer Vægtning
Læs mere.. if L(u) + w(u, v) < L(v) then.. begin... L(v) := L(u) + w(u, v)... F (v) := u.. end. med længde L(z)}
Procedure Dijkstra(G = (V, E): vægtet sh. graf,. a, z: punkter) { Det antages at w(e) > 0 for alle e E} For alle v V : L(v) := L(a) := 0, S := while z / S begin. u := punkt ikke i S, så L(u) er mindst
Læs mereForén og find. Forén og find. Forén og find. Anvendelser
Phlp Blle (unon-fnd). Vedlgehold en dynamsk famle af mængder under operatoner: INIT(n): opret mængder {}, {},, {n} UNION(,): forener de to mængder der ndeholder og. Hvs og er samme mængde skal der ngentng
Læs mereForén og find. Forén og find. Forén og find. Forén og find
Phlp Blle (unon-fnd). Vedlgehold en dynamsk famle af mængder under operatoner: INIT(n): opret mængder {}, {},, {n-} UNION(,): forener de to mængder der ndeholder og. Hvs og er samme mængde skal der ngentng
Læs mereINSTITUT FOR DATALOGI, AARHUS UNIVERSITET
INSTITUT FOR DATALOGI, AARHUS UNIVERSITET Science and Technology EKSAMEN Antal sider i opgavesættet (incl. forsiden): 6 (seks) Eksamensdag: Fredag den 22. juni 2012, kl. 9.00-13.00 Eksamenslokale: Finlandsgade
Læs mereKorteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti.
Korteste veje Korteste veje i vægtede grafer Længde af sti = sum af vægte af kanter på sti. Korteste veje i vægtede grafer Længde af sti = sum af vægte af kanter på sti. δ(u, v) = længden af en korteste
Læs mereAlgoritmer og datastrukturer Course No. 02105 Cheat Sheet 2012. May 15, 2012
Algoritmer og datastrukturer Course No. 02105 Cheat Sheet 2012 May 15, 2012 1 CONTENTS 2012 CONTENTS Contents 1 Kompleksitet 3 1.1 Køretid................................................ 3 1.2 Asymptotisk
Læs mereKorteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti.
Korteste veje Korteste veje i vægtede grafer Længde af sti = sum af vægte af kanter på sti. Korteste veje i vægtede grafer Længde af sti = sum af vægte af kanter på sti. δ(u, v) = længden af en korteste
Læs mereSkriftlig Eksamen DM507 Algoritmer og Datastrukturer
Skriftlig Eksamen DM507 Algoritmer og Datastrukturer Institut for Matematik og Datalogi Syddansk Universitet, Odense Tirsdag den 24. juni 2014, kl. 10:00 14:00 Besvarelsen skal afleveres elektronisk. Se
Læs mereBinære søgetræer. Binære søgetræer. Nærmeste naboer. Nærmeste nabo
Philip Bille Nærmeste naboer. Vedligehold en dynamisk mængde S af elementer. Hvert element har en nøgle key[] og satellitdata data[]. operationer. PREDECESSOR(k): returner element med største nøgle k.
Læs mereKorteste veje i vægtede grafer. Længde af sti = sum af vægte af kanter på sti.
Korteste veje Korteste veje i vægtede grafer Længde af sti = sum af vægte af kanter på sti. Korteste veje i vægtede grafer Længde af sti = sum af vægte af kanter på sti. δ(u, v) = længden af en korteste
Læs mereDanmarks Tekniske Universitet
side af sider Danmarks Tekniske Universitet Skriftlig prøve, den 6. maj 0. Kursusnavn: Algoritmer og datastrukturer I Kursus nr. 005. Tilladte hjælpemidler: Skriftlige hjælpemidler. Varighed: timer Vægtning
Læs mereGrådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.
Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for
Læs mereGrådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.
Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for
Læs mereGrådige algoritmer. Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.
Grådige algoritmer Grådige algoritmer Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.
Læs mereLøs til optimalitet i eksponentiel tid Find tilnærmet løsning i polynomiel tid
6 april Løsning af N P -hårde problemer Løs til optimalitet i eksponentiel tid Find tilnærmet løsning i polynomiel tid Oversigt Grænseværdier (repetition) Branch-and-bound algoritmens komponenter Eksempler
Læs mereDanmarks Tekniske Universitet
side af sider Danmarks Tekniske Universitet Skriftlig prøve, den. maj 00. Kursusnavn Algoritmer og datastrukturer Kursus nr. 06. Tilladte hjælpemidler: Alle hjælpemidler. Vægtning af opgaverne: Opgave
Læs mereBinære søgetræer. Nærmeste naboer Binære søgetræer Indsættelse Predecessor og successor Sletning Trægennemløb. Philip Bille
Binære søgetræer Nærmeste naboer Binære søgetræer Indsættelse Predecessor og successor Sletning Trægennemløb Philip Bille Binære søgetræer Nærmeste naboer Binære søgetræer Indsættelse Predecessor og successor
Læs mereP (n): rekursiv beregning af f n kræver f n beregninger af f 1. P (n) er sand for alle n 2.
P (n): rekursiv beregning af f n kræver f n beregninger af f 1. P (n) er sand for alle n 2. Bevis ved stærk induktion. Basisskridt: P (2) er sand og P (3) er sand. Induktionsskridt: Lad k 2 og antag P
Læs mereGrådige algoritmer. Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer.
Grådige algoritmer Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Grådige algoritmer Et generelt algoritme-konstruktionsprincip ( paradigme ) for
Læs mereBinære søgetræer. Nærmeste naboer Binære søgetræer Indsættelse Predecessor og successor Sletning Algoritmer på træer og trægennemløb.
Binære søgetræer Nærmeste naboer Binære søgetræer Indsættelse Predecessor og successor Sletning Algoritmer på træer og trægennemløb Philip Bille Binære søgetræer Nærmeste naboer Binære søgetræer Indsættelse
Læs mereDanmarks Tekniske Universitet
side af 2 sider Danmarks Tekniske Universitet Skriftlig prøve, den 2. maj 200. Kursusnavn Algoritmer og datastrukturer Kursus nr. 02326. Tilladte hjælpemidler: Alle hjælpemidler. Vægtning af opgaverne:
Læs mereDanmarks Tekniske Universitet
Eksamen 02105, F14 side 1 af 14 Danmarks Tekniske Universitet Skriftlig prøve, den 22. maj 2014. Kursusnavn: Algoritmer og datastrukturer 1 Kursusnummer: 02105 Hjælpemidler: Skriftlige hjælpemidler. Det
Læs mere02105 Eksamensnoter. Lasse Herskind S maj Sortering 3
02105 Eksamensnoter Lasse Herskind S153746 12. maj 2017 Indhold 1 Sortering 3 2 Analyse af algoritme 4 2.1 Køretid.......................................... 4 2.2 Pladsforbrug.......................................
Læs mereDanmarks Tekniske Universitet
side af sider Danmarks Tekniske Universitet Skriftlig prøve, den. maj 00. Kursusnavn Algoritmer og datastrukturer I Kursus nr. 005. Tilladte hjælpemidler: Alle skriftlige hjælpemidler. Vægtning af opgaverne:
Læs mereDanmarks Tekniske Universitet
Eksamen 005, F0 side af sider Danmarks Tekniske Universitet Skriftlig prøve, den 6. maj 00. Kursusnavn Algoritmik og datastrukturer I Kursus nr. 005. Tilladte hjælpemidler: Alle skriftlige hjælpemidler.
Læs mereDM02 Kogt ned. Kokken. Januar 2006
DM02 Kogt ned Kokken Januar 2006 1 INDHOLD Indhold 1 Asymptotisk notation 2 2 Algoritme analyse 2 3 Sorterings algoritmer 2 4 Basale datastrukturer 3 5 Grafer 5 6 Letteste udspændende træer 7 7 Disjunkte
Læs mereDanmarks Tekniske Universitet
side af 2 sider Danmarks Tekniske Universitet Skriftlig prøve, den 2. maj 200. Kursusnavn Algoritmer og datastrukturer I Kursus nr. 0205. Tilladte hjælpemidler: Alle skriftlige hjælpemidler. Vægtning af
Læs mereSkriftlig eksamen i Datalogi
Roskilde Universitetscenter side 1 af 9 sider Skriftlig eksamen i Datalogi Modul 1 Vinter 1999/2000 Opgavesættet består af 6 opgaver, der ved bedømmelsen tillægges følgende vægte: Opgave 1 5% Opgave 2
Læs mereDanmarks Tekniske Universitet
side af 2 sider anmarks Tekniske Universitet Skriftlig prøve, den 23. maj 20. Kursusnavn: lgoritmer og datastrukturer Kursus nr. 02326. Varighed: 4 timer Tilladte hjælpemidler: lle skriftlige hjælpemidler.
Læs mereSkriftlig Eksamen Algoritmer og Datastrukturer (dads)
Skriftlig Eksamen Algoritmer og Datastrukturer (dads) Datalogisk Institut Aarhus Universitet Mandag den 27. maj 2002, kl. 9.00 13.00 Opgave 1 (25%) Denne opgave handler om multiplikation af positive heltal.
Læs mereVægtede grafer. I en vægtet graf har enhver kant tilknyttet en numerisk værdi, kaldet kantens vægt
Korteste veje 1 Vægtede grafer HNL I en vægtet graf har enhver kant tilknyttet en numerisk værdi, kaldet kantens vægt Vægte kan repræsentere afstande, omkostninger, o.s.v. Eksempel: I en flyrutegraf repræsenterer
Læs mereBinære søgetræer. Binære søgetræer. Nærmeste naboer. Nærmeste nabo
Philip Bille er. Vedligehold en dynamisk mængde S af elementer. Hvert element har en nøgle x.key og satellitdata x.data. operationer. PREDECESSOR(k): returner element x med største nøgle k. SUCCESSOR(k):
Læs mereDynamisk programmering
Dynamisk programmering Dynamisk programmering Et algoritme-konstruktionsprincip ( paradigme ) for optimeringsproblemer. Har en hvis lighed med divide-and-conquer: Begge opbygger løsninger til større problemer
Læs mereDanmarks Tekniske Universitet
side af 2 sider Danmarks Tekniske Universitet Skriftlig prøve, den 26. maj 2009. Kursusnavn Algoritmik og datastrukturer I Kursus nr. 0205. Tilladte hjælpemidler: Alle skriftlige hjælpemidler. Vægtning
Læs mereSkriftlig Eksamen DM507 Algoritmer og Datastrukturer
Skriftlig Eksamen DM507 Algoritmer og Datastrukturer Institut for Matematik og Datalogi Syddansk Universitet, Odense Mandag den 6. juni 2016, kl. 15:00 19:00 Besvarelsen skal afleveres elektronisk. Se
Læs mereIntroduktion til datastrukturer. Introduktion til datastrukturer. Introduktion til datastrukturer. Datastrukturer
Introduktion til datastrukturer Introduktion til datastrukturer Philip Bille Datastrukturer Datastruktur. Metode til at organise data så det kan søges i/tilgås/manipuleres effektivt. Mål. Hurtig Kompakt
Læs mereSammenhængskomponenter i grafer
Sammenhængskomponenter i grafer Ækvivalensrelationer Repetition: En relation R på en mængde S er en delmængde af S S. Når (x, y) R siges x at stå i relation til y. Ofte skrives x y, og relationen selv
Læs mereDanmarks Tekniske Universitet
side af 2 sider Danmarks Tekniske Universitet Skriftlig prøve, den 23. maj 20. Kursusnavn: Algoritmer og datastrukturer I Kursus nr. 0205. Varighed: 4 timer Tilladte hjælpemidler: Alle skriftlige hjælpemidler.
Læs mereIntroduktion til datastrukturer. Introduktion til datastrukturer. Introduktion til datastrukturer. Datastrukturer
Introduktion til datastrukturer Introduktion til datastrukturer Philip Bille Datastrukturer Datastruktur. Metode til at organise data så det kan søges i/tilgås/manipuleres effektivt. Mål. Hurtig Kompakt
Læs mereGrafer og graf-gennemløb
Grafer og graf-gennemløb Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges). Dvs. ordnede par af knuder. Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges).
Læs mereGrafer / Otto Knudsen 20-11-06
Grafer / Otto Knudsen -- Grafer Definition En graf er pr. definition et par G = (V, E). Grafen består af en mængde knuder V (eng: vertices) og en mængde kanter E (eng: edges), som forbinder knuderne. A
Læs mereAlgoritmeanalyse. Øvre grænse for algoritme. Øvre grænse for problem. Nedre grænse for problem. Identificer essentiel(le) operation(er)
Algoritmeanalyse Identificer essentiel(le) operation(er) Øvre grænse for algoritme Find øvre grænse for antallet af gange de(n) essentielle operation(er) udføres. Øvre grænse for problem Brug øvre grænse
Læs mereDynamisk programmering
Dynamisk programmering Dynamisk programmering Optimeringsproblem: man ønsker at finde bedste den kombinatoriske struktur blandt mange mulige. Dynamisk programmering Optimeringsproblem: man ønsker at finde
Læs mereSkriftlig Eksamen Algoritmer og Datastrukturer (DM507)
Skriftlig Eksamen Algoritmer og Datastrukturer (DM507) Institut for Matematik og Datalogi Syddansk Universitet, Odense Onsdag den 0. juni 009, kl. 9 Alle sædvanlige hjælpemidler (lærebøger, notater, osv.)
Læs mereSkriftlig Eksamen Algoritmer og Datastrukturer 2 (2003-ordning)
Skriftlig Eksamen Algoritmer og Datastrukturer 2 (2003-ordning) Datalogisk Institut Aarhus Universitet Fredag den 28. maj 2004, kl. 9.00 13.00 Opgave 1 (20%) En (r, k) kryds-graf er en orienteret graf
Læs merePlan. Introduktion. Eks: Max i tabel. Algoritmer og datastrukturer. Algoritmer og datastrukturer. Toppunkter. Algoritme 1. Algoritme 2.
Plan Algoritmer og datastrukturer Toppunkter Introduktion Philip Bille Algoritme Algoritme Algoritme Algoritmer og datastrukturer Eks: Max i tabel Hvad er det? Algoritmisk problem: præcist defineret relation
Læs mereIntroduktion til datastrukturer
Introduktion til datastrukturer Datastrukturer Stakke og køer Hægtede lister Dynamiske tabeller Philip Bille Introduktion til datastrukturer Datastrukturer Stakke og køer Hægtede lister Dynamiske tabeller
Læs mereGrafer og graf-gennemløb
Grafer og graf-gennemløb Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges). Dvs. ordnede par af knuder. Figur: Terminologi: n = V, m = E (eller V og E (mis)bruges som V og E ).
Læs mereEt udtrykstrç med de ære regnearter, heltalskonstanter og variabler beskrives. Type Expr = Sumèplus, minus, times, div: Args, const: Int, name: Textè
Opgave 1 è20èè Et udtrykstrç med de ære regnearter, heltalskonstanter og variabler beskrives af fçlgende rekursive Trine-type: Type Expr = Sumèplus, minus, times, div: rgs, const: Int, name: Textè Type
Læs mereOpskriv følgende funktioner efter stigende orden med hensyn til O-notationen: n 3/2. n logn (3/2) n. 2 3logn (3/2) n
Side af 0 sider Opgave (4%) Ja Nej n er O(n / )? n +n er O(n )? (logn) er O( logn )? n er O()? /n er O(logn)? Opgave (4%) Opskriv følgende funktioner efter stigende orden med hensyn til O-notationen: logn
Læs mereDMG Bachelor Maj/Juni 2002
Indholdsfortegnelse 1 INDLEDNING... 2 1.1 PROBLEMFORMULERING... 2 1.2 FORMÅL... 2 1.3 MÅL... 2 2 PROBLEMANALYSE... 3 2.1 INDLEDNING... 3 2.2 TRANSPARENTE BROER I COMPUTERNETVÆRK... 3 2.3 ROUTERE I COMPUTERNETVÆRK...
Læs mereSkriftlig Eksamen Algoritmer og Datastrukturer (dads)
Skriftlig Eksamen Algoritmer og Datastrukturer (dads) Datalogisk Institut Aarhus Universitet Tirsdag den 27. maj 2003, kl. 9.00 3.00 Opgave (25%) For konstanten π = 3.4592... gælder identiteten π 2 6 =
Læs mereINSTITUT FOR DATALOGI, AARHUS UNIVERSITET
INSTITUT FOR DATALOGI, AARHUS UNIVERSITET Science and Technology EKSAMEN Antal sider i opgavesættet (incl. forsiden): (fjorten) Eksamensdag: Mandag den. juni 0, kl. 9.00-.00 Tilladte medbragte hjælpemidler:
Læs mereDanmarks Tekniske Universitet
ksamen 036, side af sider anmarks Tekniske Universitet Skriftlig prøve, den 3. maj 0. Kursusnavn: lgoritmer og datastrukturer Kursus nr. 036. Varighed: timer Tilladte hjælpemidler: lle skriftlige hjælpemidler.
Læs mereDanmarks Tekniske Universitet
side af sider Danmarks Tekniske Universitet Skriftlig prøve, den 3. maj 0. Kursusnavn: Algoritmer og datastrukturer I Kursus nr. 005. Varighed: timer Tilladte hjælpemidler: Alle skriftlige hjælpemidler.
Læs mereSommeren 2001, opgave 1
Sommeren 2001, opgave 1 Vi antager at k 3, da det ellers er uklart hvordan trekanterne kan sættes sammen i en kreds. Vi ser nu at for hver trekant er der en knude i kredsen, og en spids. Derfor er n =
Læs mereDynamisk programmering
Dynamisk programmering Dynamisk programmering Optimeringsproblem: man ønsker at finde bedste den kombinatoriske struktur (struktur opbygget af et endeligt antal enkeltdele) blandt mange mulige. Eksempler:
Læs mereDanmarks Tekniske Universitet
Eksamen 0205, Forår 205 side af 5 Danmarks Tekniske Universitet Skriftlig prøve, den 22. maj 205. Kursusnavn: Algoritmer og datastrukturer Kursusnummer: 0205 Hjælpemidler: Skriftlige hjælpemidler. Det
Læs mereINSTITUT FOR DATALOGI, AARHUS UNIVERSITET EKSAMEN. Grundkurser i Datalogi. Algoritmer og Datastrukturer 1 (2003-ordning)
INSTITUT FOR DATALOGI, AARHUS UNIVERSITET EKSAMEN Grundkurser i Datalogi Antal sider i opgavesættet (incl. forsiden): 12 (tolv) Eksamensdag: Fredag den 10. august 2012, kl. 9.00-11.00 Eksamenslokale: Finlandsgade
Læs mereIntroduktion. Philip Bille
Introduktion Philip Bille Plan Algoritmer og datastrukturer Toppunkter Algoritme 1 Algoritme 2 Algoritme 3 Algoritmer og datastrukturer Hvad er det? Algoritmisk problem: præcist defineret relation mellem
Læs mereP2-projektforslag Kombinatorik: grafteori og optimering.
P2-projektforslag Kombinatorik: grafteori og optimering. Vejledere: Leif K. Jørgensen, Diego Ruano 1. februar 2013 1 Indledning Temaet for projekter på 2. semester af matematik-studiet og matematikøkonomi-studiet
Læs mereGrafer og graf-gennemløb
Grafer og graf-gennemløb Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges). Dvs. ordnede par af knuder. Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges).
Læs mereDanmarks Tekniske Universitet
ksamen 06, side af sider anmarks Tekniske Universitet Skriftlig prøve, den 6. maj 0. ursusnavn: lgoritmer og datastrukturer ursus nr. 06. Tilladte hjælpemidler: Skriftlige hjælpemidler. Varighed: timer
Læs mereOpskriv følgende funktioner efter stigende orden med hensyn til O-notationen: 7 n 1/ log n. (log n) 4
Eksamen august 00 Algoritmer og Datastrukturer (00-ordning) Side af sider Opgave (%) n er O(n )? n(log n) er O(n )? n n + (log n) er O(n )? n er O(n )? n er Ω( n )? Opgave (%) Opskriv følgende funktioner
Læs mereAnalyse af algoritmer
Analyse af algoritmer Analyse af algoritmer Køretid Pladsforbrug Asymptotisk notation O, Θ og Ω-notation. Eksperimentiel analyse af algoritmer Philip Bille Analyse af algoritmer Analyse af algoritmer Køretid
Læs mereGrafer og graf-gennemløb
Grafer og graf-gennemløb Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges). Dvs. ordnede par af knuder. Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges).
Læs mereGrafer og graf-gennemløb
Grafer og graf-gennemløb Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges). Dvs. ordnede par af knuder. Grafer En mængde V af knuder (vertices). En mængde E V V af kanter (edges).
Læs mereIntroduktion til datastrukturer. Philip Bille
Introduktion til datastrukturer Philip Bille Plan Datastrukturer Stakke og køer Hægtede lister Dynamiske tabeller Datastrukturer Datastrukturer Datastruktur: Metode til at organise data så det kan søges
Læs mereDanmarks Tekniske Universitet
Eksamen 005, F09 side af sider Danmarks Tekniske Universitet Skriftlig prøve, den 6. maj 009. Kursusnavn Algoritmik og datastrukturer I Kursus nr. 005. Tilladte hjælpemidler: Alle skriftlige hjælpemidler.
Læs mereHashing. Hashing. Ordbøger. Ordbøger. Ordbøger Hægtet hashing Hashfunktioner Lineær probering. Ordbøger Hægtet hashing Hashfunktioner Lineær probering
Philip Bille. Vedligehold en dynamisk mængde S af elementer. Hvert element har en nøgle x.key fra et univers af nøgler U og satellitdata x.data. Ordbogsoperationer. SEARCH(k): afgør om element med nøgle
Læs mereDanmarks Tekniske Universitet
ksamen 06, F side af sider anmarks Tekniske Universitet Skriftlig prøve, den 9. maj 0. ursusnavn: lgoritmer og datastrukturer ursus nr. 06. jælpemidler: Skriftlige hjælpemidler. et er ikke tilladt at medbringe
Læs mereDanmarks Tekniske Universitet
side af 3 sider anmarks Tekniske Universitet Skriftlig prøve, den 29. maj 203. ursusnavn: lgoritmer og datastrukturer ursus nr. 02326. jælpemidler: Skriftlige hjælpemidler. et er ikke tilladt at medbringe
Læs mereOpgave 2 è20èè Det er velkendt, at f lgende algoritme er gyldig og korrekt. Algoritme: Heltalskvadratr Stimulans: n: nç0 Respons: r: r 2 ç n é èr +1è
Opgave 1 è20èè Et bin rt tr med heltal i knuderne kan repr senteres som en v rdi af f lgende rekursive type: Type Tree = Prèval: Int, left, right: Treeè hvor det tomme tr angives som?-tree. Vi er interesserede
Læs mereINSTITUT FOR DATALOGI, AARHUS UNIVERSITET
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:
Læs mereOpskriv følgende funktioner efter stigende orden med hensyn til O-notationen (bemærk at log n betegner totals logaritmen): n 2 (log n) 2 2.
Eksamen august Algoritmer og Datastrukturer (-ordning) Side af sider Opgave (%) n + n er O(n )? n / er O(n / )? n er O(n log n)? n er O((log n) )? n er Ω(n )? Ja Nej Opgave (%) Opskriv følgende funktioner
Læs mereHashing. Hashing. Ordbøger. Ordbøger. Ordbøger Hægtet hashing Hashfunktioner Lineær probering. Ordbøger Hægtet hashing Hashfunktioner Lineær probering
Philip Bille Ordbøger. Vedligehold en dynamisk mængde S af elementer. Hvert element har en nøgle key[x] fra et univers af nøgler U og satellitdata data[x]. Ordbogsoperationer. SEARCH(k): afgør om element
Læs mere