首页 新闻 会员 周边

已知所有节点的标识,父节点标识,如何快速地构建树?

0
悬赏园豆:10 [待解决问题]

已知所有节点的标识,父节点标识,所有节点存在一个集合中,如何快速地构建树?

所有节点的标识可以认为是唯一的。可以不用代码表达,表达完整清晰的思路即可,感谢园子里的各位大神。

.NetDomainer的主页 .NetDomainer | 菜鸟二级 | 园豆:336
提问于:2018-07-30 11:36
< >
分享
所有回答(2)
0

要构建树,离不开循环,要快速,可以用foreach

龙行天涯 | 园豆:1794 (小虾三级) | 2018-07-30 17:31

感谢你的回答,如果用一个双重遍历的话,比对的次数比较多,有没有可能从算法上减少比对的次数呢?

支持(0) 反对(0) .NetDomainer | 园豆:336 (菜鸟二级) | 2018-07-30 17:35

@.NetDomainer: 首先且不说快慢的问题,你要先能实现最终目的;然后才是考虑性能的优化,如果对比次数过多,可以考虑下是不是节点的结构本身过于复杂。设计上过于复杂,解析起来也没有多大优化的可能性。

支持(0) 反对(0) 龙行天涯 | 园豆:1794 (小虾三级) | 2018-07-30 17:38
0

用链表存储,不用害怕是双向边,记录点u的父亲fa[u],不经过这个点就行了。

FlaaST | 园豆:245 (菜鸟二级) | 2019-11-14 18:31
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册