filter-kruskal mst...
TRANSCRIPT
![Page 1: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/1.jpg)
Filter-Kruskal MST AlgorithmVitaly Osipov, Peter Sanders, Johannes Singler
Universitat Karlsruhe (TH)
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 2: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/2.jpg)
Motivation
What is the best (practical) algorithm for Minimum Spanning Trees?
◮ Kruskal?
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 3: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/3.jpg)
Motivation
What is the best (practical) algorithm for Minimum Spanning Trees?
◮ Kruskal? for very sparse graphs
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 4: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/4.jpg)
Motivation
What is the best (practical) algorithm for Minimum Spanning Trees?
◮ Kruskal? for very sparse graphs◮ Jarnık–Prim?
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 5: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/5.jpg)
Motivation
What is the best (practical) algorithm for Minimum Spanning Trees?
◮ Kruskal? for very sparse graphs◮ Jarnık–Prim? else
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 6: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/6.jpg)
Motivation
What is the best (practical) algorithm for Minimum Spanning Trees?
◮ Kruskal? for very sparse graphs◮ Jarnık–Prim? else◮ Karger–Klein–Tarjan, Chazelle, Pettie–Ramachandran,. . . ?
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 7: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/7.jpg)
Motivation
What is the best (practical) algorithm for Minimum Spanning Trees?
◮ Kruskal? for very sparse graphs◮ Jarnık–Prim? else◮ Karger–Klein–Tarjan, Chazelle, Pettie–Ramachandran,. . . ?
too complicated
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 8: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/8.jpg)
Kruskal’s Algorithm
Procedure kruskal(E ,T : Sequence of Edge,P : UnionFind)sort E by increasing edge weightforeach {u, v} ∈ E do
if u and v are in different components of P thenadd edge {u, v} to Tjoin the partitions of u and v in P
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 9: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/9.jpg)
Kruskal’s Algorithm
Procedure kruskal(E ,T : Sequence of Edge,P : UnionFind)sort E by increasing edge weightforeach {u, v} ∈ E do
if u and v are in different components of P thenadd edge {u, v} to Tjoin the partitions of u and v in P
◮ Time O ((n + m) log m)
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 10: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/10.jpg)
Quick-Kruskal
Procedure qKruskal(E ,T : Sequence of Edge,P : UnionFind)if m ≤ kruskalThreshold(n, |E |, |T |)
then kruskal(E ,T ,P)else
pick a pivot p ∈ EE≤:= 〈e ∈ E : e ≤ p〉; E>:= 〈e ∈ E : e > p〉qKruskal(E≤,T ,P)qKruskal(E>,T ,P)
p
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 11: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/11.jpg)
Quick-Kruskal
Procedure qKruskal(E ,T : Sequence of Edge,P : UnionFind)if m ≤ kruskalThreshold(n, |E |, |T |)
then kruskal(E ,T ,P)else
pick a pivot p ∈ EE≤:= 〈e ∈ E : e ≤ p〉; E>:= 〈e ∈ E : e > p〉qKruskal(E≤,T ,P)qKruskal(E>,T ,P)
p
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 12: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/12.jpg)
Quick-Kruskal
Procedure qKruskal(E ,T : Sequence of Edge,P : UnionFind)if m ≤ kruskalThreshold(n, |E |, |T |)
then kruskal(E ,T ,P)else
pick a pivot p ∈ EE≤:= 〈e ∈ E : e ≤ p〉; E>:= 〈e ∈ E : e > p〉qKruskal(E≤,T ,P)qKruskal(E>,T ,P)
◮ O(
m + n log2 n)
– random graphs, random edge weights
◮ Θ((n + m) log m) if there is any heavy MST edge,e.g., Lollipop graph with random edge weights
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 13: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/13.jpg)
Filter-Kruskal
Procedure filterKruskal(E ,T : Sequence of Edge,P : UnionFind)if m ≤ kruskalThreshold(n, |E |, |T |)
then kruskal(E ,T ,P)else
pick a pivot p ∈ EE≤:= 〈e ∈ E : e ≤ p〉; E>:= 〈e ∈ E : e > p〉filterKruskal(E≤,T ,P)E>:= filter(E>,P)filterKruskal(E>,T ,P)
Function filter(E)return 〈{u, v} ∈ E : u, v are in different components of P〉
p
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 14: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/14.jpg)
Filter-Kruskal
Procedure filterKruskal(E ,T : Sequence of Edge,P : UnionFind)if m ≤ kruskalThreshold(n, |E |, |T |)
then kruskal(E ,T ,P)else
pick a pivot p ∈ EE≤:= 〈e ∈ E : e ≤ p〉; E>:= 〈e ∈ E : e > p〉filterKruskal(E≤,T ,P)E>:= filter(E>,P)filterKruskal(E>,T ,P)
Function filter(E)return 〈{u, v} ∈ E : u, v are in different components of P〉
p
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 15: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/15.jpg)
Filter-Kruskal
Procedure filterKruskal(E ,T : Sequence of Edge,P : UnionFind)if m ≤ kruskalThreshold(n, |E |, |T |)
then kruskal(E ,T ,P)else
pick a pivot p ∈ EE≤:= 〈e ∈ E : e ≤ p〉; E>:= 〈e ∈ E : e > p〉filterKruskal(E≤,T ,P)E>:= filter(E>,P)filterKruskal(E>,T ,P)
Function filter(E)return 〈{u, v} ∈ E : u, v are in different components of P〉
p
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 16: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/16.jpg)
Filter-Kruskal
Procedure filterKruskal(E ,T : Sequence of Edge,P : UnionFind)if m ≤ kruskalThreshold(n, |E |, |T |)
then kruskal(E ,T ,P)else
pick a pivot p ∈ EE≤:= 〈e ∈ E : e ≤ p〉; E>:= 〈e ∈ E : e > p〉filterKruskal(E≤,T ,P)E>:= filter(E>,P)filterKruskal(E>,T ,P)
Function filter(E)return 〈{u, v} ∈ E : u, v are in different components of P〉
◮ For random edge weights
Time - O(m + n log n logmn)
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 17: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/17.jpg)
Filter-Kruskal , Parallelization
Procedure filterKruskal(E ,T : Sequence of Edge,P : UnionFind)if m ≤ kruskalThreshold(n, |E |, |T |)
then kruskal(E ,T ,P) parallelelse
pick a pivot p ∈ EE≤:= 〈e ∈ E : e ≤ p〉; E>:= 〈e ∈ E : e > p〉 parallelfilterKruskal(E≤,T ,P)E>:= filter(E>,P) parallelfilterKruskal(E>,T ,P)
Function filter(E)return 〈{u, v} ∈ E : u, v are in different components of P〉
◮ For random edge weights
Time - O(m + n log n logmn)
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 18: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/18.jpg)
Filter-Kruskal , ParallelizationUse STL algorithms from libstdc++ parallel mode
Procedure filterKruskal(E ,T : Sequence of Edge,P : UnionFind)if m ≤ kruskalThreshold(n, |E |, |T |)
then kruskal(E ,T ,P) sortelse
pick a pivot p ∈ EE≤:= 〈e ∈ E : e ≤ p〉; E>:= 〈e ∈ E : e > p〉 partitionfilterKruskal(E≤,T ,P)E>:= filter(E>,P) remove iffilterKruskal(E>,T ,P)
Function filter(E)return 〈{u, v} ∈ E : u, v are in different components of P〉
◮ For random edge weights
Time - O(m + n log n logmn)
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 19: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/19.jpg)
Getting rid of the log m/n? E.g., random graphs
2
2.5
3
3.5
4
4.5
32 64 27 28 29 210211212213214215216217218219220221222
com
paris
ons
/ edg
es m
= n
log(
n)
number of nodes n
filterKruskallog(log(x))
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 20: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/20.jpg)
Filter-Kruskal+
Function filter+(E ,T ,P)E ′:= 〈{u, v} ∈ E : u, v are in different components of P〉T ′:= 〈{u, v} ∈ E ′ : u or v have degree one in comp. graph 〉T := T ∪ T ′
return E ′ \ T ′
p
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 21: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/21.jpg)
Linear Time? E.g., random graphs
5
10
15
20
210 211 212 213 214 215 216 217 218 219 220 221 222 223 224
num
ber
of c
ompa
rison
s / n
number of nodes n
m=n m=2n m=4n
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 22: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/22.jpg)
Running Time: Random graph with 216 nodes
10
100
1000
1 4 16 64 256 1024
time
/ m [n
s]Kruskal
qKruskalKruskal8
filterKruskal+
filterKruskalfilterKruskal8
qJPpJP
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 23: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/23.jpg)
Conversion time, random graphs
10
100
1000
2 4 8 16 32 64 27 28 29 210211212213214215216
time
/ m [n
s]
number of edges m / number of nodes n
n=216, Edges -> Adj. Arrayn=222, Edges -> Adj. Arrayn=216, Adj. Array -> Edgesn=222, Adj. Array -> Edges
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 24: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/24.jpg)
Conclusions
filterKruskal improves on Kruskal and Jarnık–Prim◮ very simple◮ often faster◮ parallelizable◮ needs only edge sequence
Todo: More real world inputs, tight analysis,. . .
Open Problem: What about filterKruskal+◮ provably linear time?◮ scalable parallelization? Sequential component O
(
n0.6)
?◮ more efficient implementation
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 25: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/25.jpg)
Thank you!
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 26: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/26.jpg)
Random graph with 210 nodes
10
100
1 2 4 8 16 32 64 128 256
time
/ m [n
s]
KruskalqKruskalKruskal8filterKruskal+filterKruskalfilterKruskal8qJPpJP
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 27: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/27.jpg)
Random graph with 222 nodes
100
1000
1 2 4 8 16
time
/ m [n
s]
number of edges m / number of nodes n
KruskalqKruskalKruskal8filterKruskal+filterKruskalfilterKruskal8qJPpJP
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 28: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/28.jpg)
Random graph, n = 216, anti-Prim weights
10
100
1000
10000
100000
1 2 4 8 16 32 64 128 256
time
/ m [n
s]
number of edges m / number of nodes n
KruskalqKruskalKruskal8
qJPpJP
filterKruskal
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 29: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/29.jpg)
Random geometric graph with 216 nodes
10
100
4 8 16 32 64 128 256
time
/ m [n
s]
number of edges m / number of nodes n
KruskalqKruskalKruskal8filterKruskal+filterKruskalfilterKruskal8qJPpJP
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 30: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/30.jpg)
Lollipop graph with 210 nodes
10
100
1000
1 2 4 8 16 32 64 128
time
/ m [n
s]
number of edges m / number of nodes n
KruskalqKruskalKruskal8
filterKruskal+
filterKruskalfilterKruskal8
qJPpJP
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 31: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/31.jpg)
Lollipop graph with 216 nodes
10
100
1 4 16 64 256 1024
time
/ m [n
s]
number of edges m / number of nodes n
KruskalqKruskalKruskal8filterKruskal+filterKruskalfilterKruskal8qJPpJP
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 32: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/32.jpg)
Lollipop graph with 222 nodes
100
1000
1 2 4 8 16
time
/ m [n
s]
number of edges m / number of nodes n
KruskalqKruskalKruskal8filterKruskal+filterKruskalfilterKruskal8qJPpJP
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm
![Page 33: Filter-Kruskal MST Algorithmalgo2.iti.kit.edu/documents/algo1-2014/alenex09filterkruskal.pdfMotivation What is the best (practical) algorithm for Minimum Spanning Trees? Kruskal? for](https://reader036.vdocument.in/reader036/viewer/2022081614/5fc946323f1ceb7c312ab929/html5/thumbnails/33.jpg)
Image Segmentation Application
4 8 16tim
e / m
[ns]
m / nKruskal
qKruskalKruskal8
filterKruskal+
10
100
4 8 16
m / nfilterKruskal
filterKruskal8qJPpJP
Vitaly Osipov, Johannes Singler, Peter Sanders Filter-Kruskal MST Algorithm