Cập nhật:
tôi thấy nhiều hơn một ví dụ về những gì tôi đang cố gắng để kéo off: Managing Hierarchical Data in MySQL. Tôi muốn làm điều đó nhưng bằng JavaScript bởi vì tôi đang xây dựng một ứng dụng nhận các nhận xét có cấu trúc phân cấp, cụ thể hơn là reddit.com. Nếu bạn có phần mở rộng Khá JSON trên trình duyệt web chrome của bạn, hãy truy cập reddit và nhấp vào một chuỗi nhận xét và sau đó thêm .json vào url để xem tôi đang phân tích cú pháp gì.
Tôi nhận được dữ liệu JSON tốt, chỉ phân tích cú pháp thông qua các nhận xét và thêm HTML thích hợp để hiển thị lồng nhau của nó.
Ý tưởng về giải pháp?Algorithm cho Tree Traversal
OLD câu hỏi:
tôi đang làm việc trên một chương trình và tôi đã đi đến một phần mà tôi cần phải tìm ra logic trước khi tôi viết mã. Tôi đang lấy dữ liệu ở định dạng cây nhưng với khả năng của một số nút con cho mỗi nút cha và cây duy nhất tôi có thể tìm dữ liệu trên cây có trọng số hoặc cây nơi có nhiều nút nhất có hai nút con. Vì vậy, tôi đang cố gắng để tìm ra các thuật toán để đánh giá mỗi nút của cây như thế này:
startingParent[15] // [# of children]
child1[0]
child2[5]
child2ch1[4]
...
child2ch5[7]
child3[32]
...
child15[4]
Bây giờ khi tôi cố gắng viết ra như thế nào thuật toán của tôi sẽ làm việc tôi sẽ viết lồng nhau cho/vòng lặp while nhưng tôi cuối cùng viết một vòng lặp cho mỗi cấp độ của chiều cao của cây cho dữ liệu động và cây có chiều cao không xác định với số lượng không xác định của trẻ em trên mỗi nút điều này không hoạt động. Tôi biết rằng vào một thời điểm nào đó, tôi đã học được cách đi qua một cái cây như thế này nhưng nó đã hoàn toàn thoát khỏi tôi ngay bây giờ. Bất cứ ai biết làm thế nào điều này được thực hiện trong điều khoản của vòng?
Nếu nó không phải là bài tập về nhà và anh muốn một DFS, chắc chắn. Ông đã đặc biệt yêu cầu một cách để làm điều đó với các vòng mặc dù. BFS không được thực hiện tốt với đệ quy theo cả hai cách. –
Vâng, đây không phải là bài tập về nhà, đây là một ứng dụng tôi đang xây dựng và tôi đang cố gắng đưa vào danh sách, cũng giống như trang nhận xét để có các mức trả lời. Nhận xét chính, trả lời, trả lời của câu trả lời đó, v.v.Vì vậy, tôi đã tìm kiếm một cách để phân tích thông qua các ý kiến và xây dựng HTML thích hợp cho cấu trúc. – HuXu7