Algoritmer og Datastrukturer 1 Union-Find [CLRS, kapitel 21.2-21.3] Gerth Stølting Brodal Aarhus Universitet.

Slides:



Advertisements
Lignende præsentationer
Algoritmer og Datastrukturer 1 Amortiseret Analyse [CLRS, kapitel 17] Gerth Stølting Brodal.
Advertisements

Algoritmer og Datastrukturer 2 Del-og-kombiner [CLRS, kapitel , , 28
Algoritmer og Datastrukturer 1 Merge-Sort [CLRS, kapitel 2.3] Heaps [CLRS, kapitel 6] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 2 Grådige Algoritmer [CLRS ] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 2 Gerth Stølting Brodal Minimum Udspændende Træer (MST) [CLRS, kapitel 23]
Algoritmer og Datastrukturer 2 Gerth Stølting Brodal.
iOS, Android. Algoritmer og Datastrukturer 1 Hashing [CLRS, kapitel ] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 2 Dynamisk Programmering [CLRS, kapitel 15] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 1 Union-Find [CLRS, kapitel ] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 1 Binære Søgetræer [CLRS, kapitel 12] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 1...mere Sortering [CLRS, kapitel 8] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 1 Merge-Sort [CLRS, kapitel 2.3] Heaps [CLRS, kapitel 6] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 1 Hashing [CLRS, kapitel ] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 2 Gerth Stølting Brodal Mønstergenkendelse [CLRS, kapitel , 32.4]
Algoritmer og Datastrukturer 1...mere Sortering [CLRS, kapitel 8] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 2 Del-og-kombiner [CLRS, kapitel 2.3, , problem 30.1.c] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 1
Algoritmer og Datastrukturer 2 Maksimale Strømninger [CLRS, kapitel ] Gerth Stølting Brodal Aarhus Universitet Ford-Fulkerson.
Algoritmer og Datastrukturer 1 Binære Søgetræer [CLRS, kapitel 12] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 1 Amortiseret Analyse [CLRS, kapitel 17] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 1 Dynamisk Rang & Interval Træer [CLRS, kapitel 14] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 2 Korteste Veje [CLRS, kapitel 24, ] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 2 Gerth Stølting Brodal Minimum Udspændende Træer (MST) [CLRS, kapitel 23]
Algoritmer og Datastrukturer 2 Gerth Stølting Brodal Minimum Udspændende Træer (MST) [CLRS, kapitel 23]
Algoritmer og Datastrukturer 1 Binære Søgetræer [CLRS, kapitel 12] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 2
Algoritmer og Datastrukturer 2 Topologisk Sortering, Stærke Sammenhængskomponenter [CLRS, kapitel ] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 2 Grådige Algoritmer [CLRS ] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 1 Quicksort [CLRS, kapitel 7] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 2 Graf repræsentationer, BFS og DFS [CLRS, kapitel ] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 2 Grådige Algoritmer [CLRS ] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 2 Gerth Stølting Brodal Korteste Veje [CLRS, kapitel 24]
Algoritmer og Datastrukturer 1 Quicksort [CLRS, kapitel 7] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 2 Graf repræsentationer, BFS og DFS [CLRS, kapitel ] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 2 Del-og-kombiner [CLRS, kapitel , , 28
Algoritmer og Datastrukturer 2 Gerth Stølting Brodal Minimum Udspændende Træer (MST) [CLRS, kapitel 23]
Algoritmer og Datastrukturer 1 Union-Find [CLRS, kapitel ] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 2 Gerth Stølting Brodal Korteste Veje [CLRS, kapitel ]
Algoritmer og Datastrukturer 1 Dynamisk Rang & Interval Træer [CLRS, kapitel 14] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 2 Suffix træer og Suffix arrays [GT, kapitel 9.2],[Smyth, kapitel 5.3.2] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 2 Suffix træer og Suffix arrays [Smyth, kapitel 5.3.2], [GT, kapitel 9.2] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 2 Gerth Stølting Brodal.
Algoritmer og Datastrukturer 2 Topologisk Sortering, Stærke Sammenhængskomponenter [CLRS, kapitel ] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 1 Dynamisk Rang & Interval Træer [CLRS, kapitel 14] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 2 Grådige Algoritmer [CLRS, kapitel ] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 2 Graf repræsentationer, BFS og DFS [CLRS, kapitel ] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 2 Topologisk Sortering, Stærke Sammenhængskomponenter [CLRS, kapitel ] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 1 Heaps [CLRS, kapitel 6] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 1 Amortiseret Analyse [CLRS, kapitel 17] Gerth Stølting Brodal.
Algoritmer og Datastrukturer 1 Amortiseret Analyse [CLRS, kapitel 17] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 2 Korteste Veje [CLRS, kapitel 24, ] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 1 Elementære Datastrukturer [CLRS, kapitel 10] Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 1 Gerth Stølting Brodal Aarhus Universitet.
Algoritmer og Datastrukturer 2 Gerth Stølting Brodal Korteste Veje [CLRS, kapitel 24, ]
Algoritmer og Datastrukturer 2 Gerth Stølting Brodal Korteste Veje [CLRS, kapitel ]
Algoritmer og Datastrukturer 2 Gerth Stølting Brodal Minimum Udspændende Træer (MST) [CLRS, kapitel 23]
Algoritmer og Datastrukturer 1 Hashing [CLRS, kapitel ]
Algoritmer og Datastrukturer 2 Korteste Veje [CLRS, kapitel 24]
Dynamisk Rang & Interval Træer [CLRS, kapitel 14]
Algoritmer og Datastrukturer 1 Amortiseret Analyse [CLRS, kapitel 17]
Union-Find [CLRS, kapitel ]
Algoritmer og Datastrukturer 1
Algoritmer og Datastrukturer 1
Algoritmer og Datastrukturer 1 Amortiseret Analyse [CLRS, kapitel 17]
Algoritmer og Datastrukturer 1
Dynamisk Rang & Interval Træer [CLRS, kapitel 14]
Union-Find [CLRS, kapitel ]
Union-Find MakeSet(x) Union(x, y) FindSet(x)
Algoritmer og Datastrukturer 2
Grundlæggende Algoritmer og Datastrukturer
Præsentationens transcript:

Algoritmer og Datastrukturer 1 Union-Find [CLRS, kapitel ] Gerth Stølting Brodal Aarhus Universitet

Union-Find MakeSet(S,x) Union(x,y) FindSet(x) Opret en ny mængde { x } Erstat S x ={...x... } S y ={...x... } med S x U S y ={...x...y... } Retuner en repræsentant for S x ={...x... } FindSet(x)=FindSet(y) hvis og kun hvis x og y er i samme mængde

Trærepræsentation (I) Mængde = enkelt kædet liste MakeSet = lav en ny knude FindSet = retuner sidste knude Union = konkatener listerne MakeSet(S,x)O(1) Union(x,y)O(|S x |+|S y |) FindSet(x)O(|S x |)

Trærepræsentation (II) Mængde = enkelt kædet liste MakeSet = lav en ny knude FindSet = retuner sidste knude Union = konkatener listerne og opdater pointerne MakeSet(S,x)O(1) Union(x,y)O(min(|S x |,|S y |)) FindSet(x)O(1)

Sekvens af Union Sætning Et sekvens af n union operationer tager tid højest O(n·log n) Bevis Hver pointer flyttes højest log n gange (hver gang til en liste der mindst er dobbelt så stor)

Trærepræsentation Union Mængde = træ MakeSet = lav en ny knude FindSet = retuner roden Union = Sæt det ”lille” træ under roden af det ”store” træ

Stikomprimering

Analyse af Trærepræsentation med Stikomprimering Sætning En sekvens af m Union-Find operation på n elementer tager tid O(m·α(n)) hvor α(n) er den Inverse til Ackerman funktionen ([CLRS], kapitel 21.4) som for alle praktiske formål α(n)≤4.