Bình luận

Thông báo

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Test link

Thuật Toán Tìm Kiếm Theo Chiều Rộng BFS

bfs, BFS, thuật toán duyệt theo chiều sâu, tìm kiếm theo chiều rộng bFS, thuật toán, giải thuật, C, C++

THUẬT TOÁN DUYỆT CHIỀU RỘNG BFS

Bài trước mình đã đăng về thuật toán DFS thì bài này sẽ là BFS (Breadth First Search) duyệt đồ thị theo chiều rộng.

Thuật Toán Tìm Kiếm Theo Chiều Rộng BFS

THUẬT TOÁN

MÔ TẢ THUẬT TOÁN:

  • BFS: duyệt theo chiều rộng xuất phát từ đỉnh u 
  • Thăm các đỉnh nằm trong danh sách kề của u mà chưa được thăm (gọi là các đỉnh mức 1) 
  • Thăm các đỉnh nằm trong danh sách kề của các đỉnh mức 1 mà chưa được thăm (gọi là các đỉnh mức 2) 
  • Thăm các đỉnh nằm trong danh sách kề của các đỉnh mức 2 mà chưa được thăm (gọi là các đỉnh mức 3) 
  • . . . 
  • Sử dụng cấu trúc hàng đợi (queue)
  • Thuật toán được code trên ngôn ngữ C++

VÍ DỤ:

Vẫn là ví dụ về đồ thị có hướng ở bài trước nhé =)))


CODE MẪU:

Kết quả: 1 3 6 4 7 2 5

SO SÁNH DFS VÀ BFS:

Dưới đây là so sáng kết quả của 2 thuật toán trên cùng một đồ thị. Hình bên trái là duyệt theo DFSbên phải là duyệt theo BFS.


LỜI KẾT

Trên đây mình đã chia sẻ những hiểu biết của mình về thuật toán duyệt chiều rộng BFS. Nếu có gì sai sót các bạn có thể để lại comment ở bên dưới để mình chỉnh sửa. Cảm ơn các bạn đã đọc bài viết !
Đánh Giá Bài Viết:
No pain, no gain !

Post a Comment

© Phạm Văn Linh. All rights reserved. Developed by Jago Desain