Bất kỳ ai cũng có sẵn sàng thực hiện thuật toán truyền tải đảo ngược đầu tiên trong C#?Chiều rộng đảo chiều Lần truyền đầu tiên trong C#
Bằng cách đảo chiều ngang đầu tiên, ý tôi là thay vì tìm kiếm một cây bắt đầu từ một nút chung, tôi muốn tìm kiếm cây từ phía dưới và dần dần hội tụ thành một nút chung.
Hãy xem hình dưới đây, đây là sản phẩm của một traversal Chiều rộng đầu tiên:
Ở chiều ngược lại bề rộng traversal đầu tiên của tôi, 9
, 10
, 11
và 12
sẽ là vài nút đầu tiên được tìm thấy (thứ tự trong số đó không quan trọng vì chúng đều là thứ tự đầu tiên). 5
, 6
, 7
và 8
là hai nút thứ hai được tìm thấy, v.v. 1
sẽ là nút cuối cùng được tìm thấy.
Bất kỳ ý tưởng hoặc con trỏ nào?
Chỉnh sửa: Thay đổi "Chiều rộng tìm kiếm đầu tiên" đến "Chiều rộng đầu tiên traversal" để làm rõ các câu hỏi
Làm thế nào để bạn tìm thấy tất cả các lá mà không đi qua toàn bộ cây? – Nifle
Không cần biết thêm về vấn đề này. Thông thường có thể bắt đầu bằng một nút và quạt, như tìm kiếm theo chiều rộng, tìm kiếm chiều sâu, làm sâu sắc lặp lại, v.v. Làm thế nào chúng ta có thể biết một ưu tiên 9, 10, 11 và 12 là ba bước nhảy từ 1? –
Bạn đã sử dụng cái gì để tạo hình ảnh đó? –