只知道树所在的层次和当前节点的id,怎么样知道该节点的父节点?

已知数据

已知id和所在的层级。

图片说明

手动处理之后的树结构为上图。

问题:现在想要添加一列【父节点】,可以实现吗?如果能应该怎么实现?

求大神们给个思路,谢谢!

首先,那两列数据,不足以区分出每个节点的父节点ID。
比如3有个子节点11,5和11在数据上是分不出,谁的父节点ID是3,谁的父节点是4。

然后,如果有一个树对象,该对象上也存储了信息,可以获取每个节点的子节点
则,可以根据当前节点的层次,-1得到上级节点的层次,遍历上级节点,调用树对象的方法,获取子节点集合。遍历子节点集合。找到当前节点。

你把ID生成的逻辑换一下就是了
比如第0层ID:1
第1层ID:1.1
第2层ID:1.1.1和1.1.2
第3层ID:1.1.2.1、1.1.2.2、1.1.2.3、1.1.2.4
第5层ID:1.1.2.3.1和1.1.2.3.2
这样的话,根据这个ID就能知道当前节点处于第几层第几个,也能更加前面的数字得到所有父级的ID