1. Trang chủ
  2. » Luận Văn - Báo Cáo

Các thuật toán tìm kiếm trên đồ thị(CTRR, TRR).pdf

37 11 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 37
Dung lượng 723,92 KB

Nội dung

CÁC THUẬT TỐN TÌM KIẾM TRÊN ĐỒ THỊ MỤC TIÊU: - Hiểu thuật toán DFS BFS, Kruskal, Prim - Thực duyệt đồ thị thuật toán DFS BFS - Vận dụng thuật toán DFS BFS để tìm đường - Vận dụng Kruskal Prim để tìm đường ngắn 11/21/2022 Các khái niệm DFS ⚫ Thuật toán DFS (Depth First Search) ➢ DFS thuật tốn tìm kiếm hay duyệt qua tất đỉnh thuộc thành phần liên thơng đồ thị ➢ Thuật tốn có nhiều ứng dụng giải tốn liên thơng, khung, đường đi,… 11/21/2022 Các khái niệm DFS ➢ Có thể cài đặt phương pháp lặp cấu trúc stack khử đệ quy ➢ Độ phức tạp thuật tốn : O(n+m) • Với n số đỉnh • Với m số cạnh 11/21/2022 Ý tưởng DFS ⚫ Xuất phát từ đỉnh v cho trước chưa thăm ⚫ Thăm đỉnh v tìm đỉnh u chưa thăm kề với v, thăm u lặp lại trình tất đỉnh thăm ⚫ Nếu đỉnh u mà khơng cịn đỉnh kề chưa thăm quay trở lại đỉnh trước u (có đỉnh kề u đường đến u) tìm đỉnh kề chưa thăm đỉnh 11/21/2022 Thuật toán đệ quy DFS 11/21/2022 Ví dụ thuật tốn DFS Ví dụ: Tìm khung đồ thị với f đỉnh gốc d a i j h k f c e b g 11/21/2022 Ví dụ thuật tốn DFS d a i j f f c e h k g b h g Ta xuất phát từ đỉnh f, tìm đỉnh kề f, ta lấy k đỉnh g tiếp tục k j {f, g, k, j}, sau ta lùi k, khơng them cạnh nào, tiếp tục lùi j h,… 11/21/2022 Ví dụ thuật toán DFS d a i f j g f k c e d e h h b k g j c i a b Thêm i làm thứ hai h lùi f Lại thêm hậu duệ f : {d, e, c, a} Lùi c thêm b làm thứ hai Cây thu khung đồ thị cho 11/21/2022 Các khái niệm BFS ⚫ Thuật toán BFS (Breadth First Search) ➢ Thuật tốn BFS dùng để duyệt tìm kiếm đồ thị tương tự thuật toán DFS thay dùng cấu trúc stack BFS dùng cấu trúc hàng đợi để thực ➢ 11/21/2022 Thuật tốn có độ phức tạp O(m+n) Ý tưởng BFS ❑ Xuất phát từ đỉnh v cho trước chưa thăm, bỏ v vào hàng đợi ❑ Lấy từ hàng đợi đỉnh u, thăm u bỏ đỉnh kề chưa thăm u vào hàng đợi ❑ Lặp lại hàng đợi rỗng 11/21/2022 10 ... làm thứ hai Cây thu khung đồ thị cho 11/21/2022 Các khái niệm BFS ⚫ Thuật toán BFS (Breadth First Search) ➢ Thuật tốn BFS dùng để duyệt tìm kiếm đồ thị tương tự thuật toán DFS thay dùng cấu trúc.. .Các khái niệm DFS ⚫ Thuật toán DFS (Depth First Search) ➢ DFS thuật tốn tìm kiếm hay duyệt qua tất đỉnh thuộc thành phần liên thơng đồ thị ➢ Thuật tốn có nhiều ứng dụng... tất khung đồ thị G tìm khung có độ dài nhỏ nhất, khung gọi khung ngắn đồ thị Ví dụ : Cây khung ngắn đồ thị G vẽ cạnh tô đậm hình bên Hình: Cây khung ngắn đồ thị G 11/21/2022 16 Thuật toán Kruskal

Ngày đăng: 21/11/2022, 21:37

w