bồi dưỡng học sinh giỏi môn tin học thpt chuyên đề phép tìm kiếm theo chiều sâu (depth first search DFS) và phép tìm nhiếu theo chiều rộng (breadth first search BFS)
Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 20 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
20
Dung lượng
171 KB
Nội dung
PHÉP DUYỆT MỘT ĐỒ THỊ Các toán đồ thị ngày quan tâm nghiên cứu, phát triển, ứng dụng khoa học sống Một cách tiếp cận toán Phép duyệt đồ thị Trong phạm vi tham luận xin đề cập đến số phép duyệt đồ thị bản, hiệu Như bạn biết: Khi biết gốc ta thực phép duyệt để thăm nút theo thứ tự Với đồ thị vấn đề đặt tương tự Xét đồ thị không định hướng G(V,E) đỉnh v V(G), ta cần thăm tất đỉnh thuộc G mà với tới đỉnh v (nghĩa thăm nút liên thơng với v) Ta có hai cách giải đây: Phép tìm kiếm theo chiều sâu (Depth First Search-DFS) phép tìm nhiếu theo chiều rộng (Breadth First Search-BFS) Tìm kiếm theo chiều sâu Đỉnh xuất phát v thăm, đinh w chưa thăm, mà lân cận v, chọn phép tìm kiếm theo chiều sâu xuất phát từ w lại thực Khi đỉnh u với tới mà đỉnh lân cận thăm rồi, ta quay ngược lên đỉnh cuối vừa thăm (mà cịn có đỉnh w lân cận với chưa thăm) Và phép tìm kiếm theo chiều sâu xuất phát từ w lại thực Phép tìm kiếm kết thúc khơng cịn nút chưa thăm mà với tới từ nút thăm Giải thuật phép duyệt này: Procedure DFS(v) Visited(v) :=1; //Visited dùng để đánh dấu đỉnh thăm For đỉnh w lân cận v Do If Visited(w)=0 then Call DFS(w); Return Ta thấy: Trong trường phợp G biểu diễn danh sách lân cận đỉnh w lân cận v xác định cách dựa vào danh sách móc nối ứng với v Vì giải thuật DFS xem xét nút danh sách lân cận nhiều lần mà mà lại có 2e nút danh sách (ứng với e cung), nên thời gian để hồn thành phép tìm kiếm O(e) Còn G biểu diễn ma trận lân cận thời gian để xác định đỉnh lân cận v O(n) Vì tối đa có n đỉnh thăm, nên thời gian tìm kiếm tổng quát O(n2) Giải thuật DFS(V1) đảm bảo thăm đỉnh liên thông với V Tất đỉnh thăm với cung liên quan tới đỉnh gọi phận liên thông (vùng liên thông) G Với phép duyệt DFS ta xác định G có liên thơng hay khơng, tìm phận liên thơng G G không liên thông Áp dụng giải thuật tìm kiếm theo chiều sâu DFS để giải toán sau, giúp ta hiểu DFS Bài toán: Bãi cỏ ngon - VBGRASS Bessie dự định ngày nhai cỏ xuân ngắm nhìn cảnh xuân cánh đồng nông dân John, cánh đồng chia thành ô vuông nhỏ với R (1