tailieunhanh - Bài giảng Thuật toán ứng dụng: Graphs

Bài giảng Thuật toán ứng dụng: Graphs. Chương này cung cấp cho học viên những nội dung về: đồ thị và các thuật ngữ liên quan; tìm kiếm theo chiều sâu; tìm kiếm theo chiều rộng; chu trình Euler; thuật toán Dijkstra sử dụng hàng đợi ưu tiên; thuật toán Kruskal sử dụng disjoint-set structure; . Mời các bạn cùng tham khảo chi tiết nội dung bài giảng! | THUẬT TOÁN ỨNG DỤNG PHAM QUANG DUNG Graphs Phạm Quang Dũng Bộ môn KHMT dungpq@ 1 Nội dung Đồ thị và các thuật ngữ liên quan Tìm kiếm theo chiều sâu Tìm kiếm theo chiều rộng Chu trình Euler Thuật toán Dijkstra sử dụng hàng đợi ưu tiên Thuật toán Kruskal sử dụng disjoint-set structure Exercises 2 Đồ thị Đối tượng toán học bao gồm các đỉnh node và các liên kết giữa các đỉnh cạnh cung Đồ thị G V E trong đó V là tập đỉnh E là tập cạnh cung u v E chúng ta nói u kề với v 6 2 6 2 1 5 1 5 3 4 3 4 Undirected graph Directed graph V 1 2 3 4 5 6 V 1 2 3 4 5 6 E 1 3 1 6 2 4 2 5 E 1 3 1 6 2 4 2 5 3 2 6 3 4 3 6 4 5 6 2 3 4 6 3 4 5 Đồ thị Bậc của một đỉnh là số đỉnh kề với nó deg v u u v E Bán bậc vào bán bậc ra của một đỉnh là số cung đi vào đi ra khỏi đỉnh đó trên đồ thị có hướng deg- v u u v E deg v u v u E 6 2 6 2 1 5 1 5 3 4 3 4 Undirected graph Directed graph 4 deg 1 2 deg 6 3 deg- 1 0 deg 1 2 Đồ thị Cho đồ thị G V E và 2 đỉnh s t V một đường đi từ s đến t trên G là chuỗi s x0 x1 xk t trong đó xi xi 1 E i 0 1 k-1 6 2 6 2 1 5 1 5 3 4 3 4 Path from 1 to 5 Path from 1 to 5 1 3 4 5 1 3 4 5 1 6 2 5 1 6 4 5 5 Đồ thị đặc biệt 1 3 1 1 4 2 3 2 6 3 2 5 4 5 4 Đồ thị đầy đủ Đồ thị hai phía Đồ thị phẳng 6 Đồ thị Ma trận kề Ma trận trọng số 4 6 2 6 2 3 6 1 5 1 5 9 5 2 7 8 3 4 3 4 1 2 3 4 5 6 1 2 3 4 5 6 1 0 0 1 0 0 1 1 0 0 7 0 0 3 2 0 0 0 1 1 1 2 0 0 0 9 6 4 3 1 0 0 1 0 1 3 7 0 0 8 0 5 4 0 1 1 0 1 0 4 0 9 8 0 2 0 5 0 1 0 1 0 0 5 0 6 0 4 0 0 6 1 1 1 0 0 0 6 3 4 5 0 0 0 7 Biểu diễn đồ thị Danh sách kề Với mỗi v V A v là tập các bộ v u w trong đó w là trọng số cung v u 4 6 2 A 1 1 6 3 1 3 7 3 6 A 2 2 4 9 2 5 6 1 5 9 5 2 A 3 3 4 8 7 8 3 4 A 4 4 5 2 A 5 A 6 6 3 5 6 2 4 8 Duyệt đồ thị Thăm các đỉnh của đồ thị theo một thứ tự nào đó Mỗi đỉnh thăm đúng 1 lần Có 2 phương pháp chính Duyệt theo chiều sâu Depth-First Search DFS Duyệt theo chiều rộng Breadth-First Search BFS 9 Depth-First Search DFS DFS u DFS bắt đầu thăm từ đỉnh u Nếu tồn tại một đỉnh v trong danh sách kề của u mà .

TỪ KHÓA LIÊN QUAN