[Thuật toán – Java] Chương trình mô phỏng thuật toán tìm kiếm theo chiều rộng (BFS) và chiều sâu (DFS)
Chương trình dưới đây mô tả 2 thuật toán tìm kiếm theo chiều rộng (BFS – Breadth-first search) và chiều sâu (DFS – Depth-first search) trên đồ họa, có các bước đi và màu sắc đẹp.
Giao diện của chương trình khi khởi động sẽ như thế này:
Chương trình có 4 phần chính. Phần trên (top) là tiêu đề chương trình, phần dưới (bottom) là tên mềnh =)). Phần bên trái (left) là bảng điều khiển. Phần bên phải là phần vẽ đồ thị.
Bạn lưu ý đến phần bên trái (bảng điều khiển). Trước tiên bạn cần chọn thuật toán để duyệt đồ thị, sau đó nhập số điểm của đồ thị (tối đa 10 điểm, nếu bạn muốn sửa thì vào code sửa lại) và các cạnh của nó. Các điểm của đồ thị sẽ được bố trí theo hình tròn để tránh các đường đi trùng nhau gây khó quan sát. Sau khi bạn nhập xong các đầu vào thì cuối cùng là chọn điểm bắt đầu chạy.
Dưới đây là hình ảnh khi duyệt đồ thị theo BFS và DFS.
Màu của điểm đầu là vàng, màu điểm cuối cùng là đỏ. Khi duyệt thì thứ tự duyệt sẽ được đánh số. VD với đồ thị trên, khi duyệt BFS sẽ là 1->2->4->5->3
Các bạn có thể download mã nguồn hoặc file jar. Lưu ý bạn cần cài JDK mới chạy được file jar.
Mọi thắc mắc hoặc góp ý xin liên hệ với mình. Rất vui khi các bạn quan tâm góp ý.
a ơi a có code bài này bằng c# k ạ??
Anh không có trên C# 🙂
🙁
cơ mà a ơi, nếu như làm bằng c# thì làm sao để vẽ đc cái đồ thị như thế ạ??
Cái này anh cũng không rõ, anh chưa làm C# về nó 🙂
bài viết bạn rất hay !
bạn học trường nào ?
Cảm ơn bạn đã quan tâm blog. Mình học CNTT Thái Nguyên
cho e hỏi code java của thuật toán tiềm kiếm theo chiều sâu như thế nào ạ
Trang web của bạn nên có các menu chia thành nhiều topic khác nhau để người đọc dễ tìm bài và xem tất cả các bài.
Dù sao thì các bài viết rất hay!
Menu của mình có bên trên đó bạn.
a ơi a có phần thiết kế giao diện k ạ. cho e xem với
Cái đó mình code trực tiếp bằng java nhé.
sao e tải về k mở đc ạ, e tải jdk r ạ
a kh có thuật toán tìm kiếm sâu dần ạ
ko nhé.