input license here

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

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 !
Related Posts
Diệp Quân
Nguyen Manh Cuong is the author and founder of the vmwareplayerfree blog. With over 14 years of experience in Online Marketing, he now runs a number of successful websites, and occasionally shares his experience & knowledge on this blog.
SHARE

Related Posts

Subscribe to get free updates

Post a Comment

Sticky