BFS khám phá một đồ thị theo từng tầng (level by level), thăm tất cả các đỉnh kề của một nút trước khi đi sâu hơn. Nó dùng một queue (hàng đợi) và tìm đường đi ngắn nhất (ít cạnh nhất) trong đồ thị không trọng số.
Ý tưởng
Bắt đầu từ một nguồn, đưa nó vào hàng đợi, rồi liên tục lấy một nút ra khỏi hàng đợi, thăm các đỉnh kề chưa được thăm của nó, và đưa chúng vào hàng đợi. Một tập (đã thăm) ngăn việc thăm lại.
