Tôi có một cơ sở dữ liệu về các kết nối cha-con. Dữ liệu trông giống như sau nhưng có thể được trình bày theo bất kỳ cách nào bạn muốn (từ điển, danh sách danh sách, JSON, v.v.).Đệ quy xây dựng cây JSON phân cấp?
links=(("Tom","Dick"),("Dick","Harry"),("Tom","Larry"),("Bob","Leroy"),("Bob","Earl"))
Kết quả mà tôi cần là cây JSON phân cấp, sẽ được hiển thị bằng d3. Có những cây con rời rạc trong dữ liệu mà tôi sẽ gắn vào nút gốc. Vì vậy, tôi cần phải đệ quy đi mặc dù các liên kết, và xây dựng cấu trúc cây. Điều xa nhất tôi có thể nhận được là lặp lại tất cả mọi người và thêm con cái của họ, nhưng tôi không thể tìm ra các liên kết đặt hàng cao hơn (ví dụ: cách nối thêm một người có con với con của người khác). Điều này tương tự như một câu hỏi khác here, nhưng tôi không có cách nào để biết các nút gốc trước, vì vậy tôi không thể triển khai giải pháp được chấp nhận.
Tôi sẽ tìm cấu trúc cây sau đây từ dữ liệu mẫu của tôi.
{
"name":"Root",
"children":[
{
"name":"Tom",
"children":[
{
"name":"Dick",
"children":[
{"name":"Harry"}
]
},
{
"name":"Larry"}
]
},
{
"name":"Bob",
"children":[
{
"name":"Leroy"
},
{
"name":"Earl"
}
]
}
]
}
Cấu trúc này hiển thị như thế này trong bố cục d3 của tôi.
Không có câu hỏi trong đó. Ngoài ra, bạn đã thử bất cứ điều gì chưa? Có lẽ bạn nên? – netcoder