Tôi mới tham gia Đề án, đã và đang sử dụng Đề án MIT trong thời gian này. Tôi đang cố gắng hiểu cách triển khai các thuật toán đồ thị phổ biến như thuật toán đường dẫn ngắn nhất, BFS, DFS. Có bất kỳ hướng dẫn nào có thể giúp tôi hiểu được sự đệ quy có liên quan, cùng với các cấu trúc dữ liệu thích hợp không? Tôi đã thử Googling cách của tôi xung quanh, nhưng điều đó đã không kết thúc cho tôi kết quả tốt.Lập trình đồ thị trong Đề án
EDIT: Tôi xin lỗi vì không cụ thể hơn trước đó. Câu hỏi của tôi liên quan đến việc duyệt qua toàn bộ biểu đồ và không tìm đường đi giữa một nút bắt đầu và mục tiêu. Vì vậy, với một đồ thị G (V, E), nơi V là tập đỉnh và E là tập cạnh, bắt đầu từ bất kỳ nút n, những gì là con đường được tạo ra để ở phần cuối của này traversal, tất cả các nút được truy cập.
Hầu hết các triển khai mà tôi tìm thấy trong khi Googling là những mục nhập với nút bắt đầu và mục tiêu. Phiên bản của tôi (một trong các câu trả lời), chọn một đỉnh và truy cập tất cả các đỉnh khác.
Lấy ví dụ, đồ thị dưới đây: -
1 ----> 2 5
/| /|
/| /|
/| /|
/ | / |
/ | / |
4<----3 <---6 7
này DAG có (4-> 2), (2-> 3), (5> 6) và (5> 7), mà tôi không thể đại diện trong biểu đồ. :-)
Con đường đi qua bắt đầu từ có thể là:
(1, 2, 3, 4, 5, 6, 7)
Tôi rất tò mò về những gì bạn đang cố gắng mã hóa. Cụ thể, thuật toán tìm kiếm thường liên quan đến việc tìm kiếm mục tiêu hoặc mục tiêu, nhưng có vẻ như chương trình của bạn không. Một số tuyên bố mục đích, hợp đồng, và các trường hợp thử nghiệm sẽ giúp một bó! –
John, tôi đã thêm một bản tóm tắt ngắn cho câu hỏi của mình! Hãy cho tôi biết nếu tôi thiếu cái gì đó! – Gooner