Tôi đã thực hiện một số nghiên cứu và dường như tôi đang thiếu một phần nhỏ của thuật toán này. Tôi hiểu cách mà Breadth-First Search hoạt động, nhưng tôi không hiểu chính xác nó sẽ đưa tôi đến một con đường cụ thể như thế nào, trái ngược với việc chỉ cho tôi biết mỗi nút riêng lẻ có thể đi đến đâu. Tôi đoán cách dễ nhất để giải thích sự nhầm lẫn của tôi là cung cấp một ví dụ:
Vì vậy, ví dụ, giả sử tôi có một biểu đồ như thế này:
Và mục tiêu của tôi là đi từ A đến E (tất cả các cạnh đều không có trọng số).
Tôi bắt đầu tại A, vì đó là nguồn gốc của tôi. Tôi xếp hàng A, theo sau là ngay lập tức A và khám phá nó. Điều này mang lại B và D, vì A được kết nối với B và D. Do đó, tôi xếp hàng cả B và D.
Tôi dequeue B và khám phá nó, và thấy rằng nó dẫn đến A (đã khám phá) và C, vì vậy tôi xếp hàng C. Tôi sau đó dequeue D, và thấy rằng nó dẫn đến E, mục tiêu của tôi. Sau đó tôi dequeue C, và thấy rằng nó cũng dẫn đến E, mục tiêu của tôi.
Tôi biết một cách logic rằng đường dẫn nhanh nhất là A-> D-> E, nhưng tôi không chắc chính xác việc tìm kiếm đầu tiên giúp ích như thế nào - tôi nên ghi lại các đường dẫn như thế nào khi tôi kết thúc, tôi có thể phân tích kết quả và xem con đường ngắn nhất là A-> D-> E?
Ngoài ra, lưu ý rằng tôi không thực sự sử dụng cây, vì vậy không có nút "cha mẹ", chỉ có con.