Download presentation
Presentation is loading. Please wait.
Published byAnnis Willis Modified over 9 years ago
1
مرتضي صاحب الزماني 1 Basic Graph Algorithms
2
مرتضي صاحب الزماني 2 Graph Data Structures Adjacency Matrix [©Bazargan]
3
مرتضي صاحب الزماني 3 Graph Data Structures Adjacency Matrix [©Bazargan]
4
مرتضي صاحب الزماني 4 Graph Data Structures Adjacency List [©Bazargan]
5
مرتضي صاحب الزماني 5 Graph Data Structures Adjacency List [©Bazargan]
6
مرتضي صاحب الزماني 6 Graph Search Algorithms [©Bazargan]
7
مرتضي صاحب الزماني 7 Graph Search Algorithms Graph BFS DFS [©Bazargan]
8
مرتضي صاحب الزماني 8 Depth-First Search پيچيدگي زماني : O (|V| + |E|) چون همة گره ها و يالها حداکثر يک بار پيموده مي شوند.
9
مرتضي صاحب الزماني 9 Breadth-First Search پيچيدگي زماني : O (|V| + |E|). باشروع از يک گره، همة گره هاي قابل دسترسي را در يک صف قرار مي دهد و آنها را ملاقات مي کند. اگر گرهي قبلاً ملاقات شده است در صف قرار نمي گيرد. تکرار براي هر گره در صف. تفاوت با DFS: صف به جاي پشته.
10
مرتضي صاحب الزماني 10 Topological Search براي گراف جهت دار بدون سيکل (DAG). ترتيب Topological: يعني parent ها هميشه قبل از اولاد ملاقات مي شوند. مي تواند به صورت BFS جستجو شود. CA B D E C-A-E-B-D
11
مرتضي صاحب الزماني 11 Spanning Tree G’ or E’ E بسياري از مسائل گراف به صورت کلي زيرند : [©Bazargan]
12
مرتضي صاحب الزماني 12 Minimum Spanning Tree (MST) Formal Definition [©Bazargan]
13
مرتضي صاحب الزماني 13 Minimum Spanning Tree
14
مرتضي صاحب الزماني 14 Kruskal MST Algorithm http://students.ceid.upatras.gr/~papagel/project/contents.htm [©Bazargan]
15
مرتضي صاحب الزماني 15 Kruskal MST Algorithm Kruskal’s algorithm is O(m log m) (m=|E|)
16
Kruskal MST Algorithm E(1): the set of the sides of the minimum genetic tree. E(2): the set of the remaining sides. STEPS E(1)=0,E(2)=E While E(1) contains less then n-1 sides and E(2)=0 do From the sides of E(2) choose one with minimum cost-->e(ij) E(2)=E(2)-{e(ij) } If V(i),V(j) do not belong in the same tree then unite the trees of V(i) and V(j) to one tree. end (If) ) contains less then n-1 sides and E(2)=0 do end (While) End مرتضي صاحب الزماني 16
17
مرتضي صاحب الزماني 17 Shortest Path Used in VLSI routing. Single-Pair Shortest Path (SPSP):
18
مرتضي صاحب الزماني 18 Single-Pair Shortest Path در يک گراف وزن دار، براي دو گره u, v V ، مجموعه گره هاي P V ( شامل u و v) را طوري انتخاب کنيد که P حداقل هزينه را در G از u به v بدهد.
19
مرتضي صاحب الزماني 19 Dijkstra Algorithm کوتاهترين مسير از يک گره به همة گره هاي ديگر را پيدا مي کند. O(n 2 ) Initialize D Find min distance from u to each node (so far) Find shortest path by backtracing
20
مرتضي صاحب الزماني 20 All-Pairs Shortest Path کوتاهترين مسير بين همة زوج گره ها.
21
مرتضي صاحب الزماني 21 Matching در يک گراف بدون جهت G = (V, E) ، E’ E را طوري پيدا کنيد که براي همة گره هاي v حداکثر يک يال از E’ مجاور v باشد. G CA B D E F H Maximum matching: matching ي با ماکزيمم تعداد ( وزن ) يالها. CA B D E F H
22
مرتضي صاحب الزماني 22 Min-Cut
23
مرتضي صاحب الزماني 23 Steiner Minimum Tree (SMT)
24
مرتضي صاحب الزماني 24 Steiner Minimum Tree 8
25
مرتضي صاحب الزماني 25 Steiner Minimum Tree When D = V, SMT = MST. When |D| = 2, SMT = Single Pair Shortest Path Problem. The SMT problem is NP-Complete.
26
مرتضي صاحب الزماني 26 Rectilinear Steiner Tree (RST) A steiner tree whose edges are constrained to be vertical or horizontal. Steiner point Demand point
27
مرتضي صاحب الزماني 27 Rectilinear Steiner Minimum Tree (RSMT) Similar to the SMT problem, except that the tree T is a minimum cost rectilinear Steiner tree. This problem is NP-Complete but we can get an approximated solution to this problem by making use of the MST.
28
مرتضي صاحب الزماني 28 Underlying Grid Graph
29
مرتضي صاحب الزماني 29 Approximate Solution to RSMT Construct a MST T. Obtain a RST T’ from T by connecting the vertices in T using vertical and horizontal edges. MST or a better one There can be many solutions.
30
مرتضي صاحب الزماني 30 Different Steiner Trees
31
مرتضي صاحب الزماني 31 Approximate Solution to RSMT It is proved that: W MST 1.5 W RSMT RSMT ي که از MST به دست مي آيد RSMT واقعي ( بهينه )
32
مرتضي صاحب الزماني 32 Line Sweep Algorithm
33
مرتضي صاحب الزماني 33 Line Sweep Algorithm CFCFF
34
مرتضي صاحب الزماني 34 Line Sweep Algorithm
35
مرتضي صاحب الزماني 35 Line Sweep Algorithm (Hidden)
36
مرتضي صاحب الزماني 36 Line Sweep Algorithm (Hidden) Time Complexity: O(nlogn): sorting 2n points. O(logn): INSERT. DELETE, ABOVE, BELOW (sorted list = a balanced tree) loop iteration: 2n times O(nlogn) + O(2n * logn) = O(nlogn)
37
مرتضي صاحب الزماني 37 يک مرجع الکترونيکي Algorithms and Complexity, Wilf: http://www.cis.upenn.edu/~wilf/AlgComp3.html
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.