自下向上的多条树形结构数据,反转合并成一条或多条自上向下树形结构
已知多个数据的id,得出所有的上级,之后再反转
原始数据 规则:每条数据的pid是唯一的
{id:1,pid:0},
{id:2,pid:1},
{id:3,pid:2},
{id:4,pid:3},
{id:5,pid:3},
{id:6,pid:2},
{id:7,pid:1},
已知id:3,7.需要得到的结果:
0
|
1
/ \
2 7
/
3
思路以及原理
从id:3,7获得自下向上的树形结构:
3->2->1->0
7->1->0
之后再反转成上面自上向下的数据结构:
[
{
id:1,
pid:0,
children:[
{
id:2,
pid:1,
children:[
{
{id:3,pid:2}
}
]
},
{
id:7,
pid:1
}
]
}
]
那么这个过程用代码编程怎么实现?请求各位大佬帮忙看看...