欢迎使用CSDN-markdown编辑器

来源:互联网 发布:淘宝网店怎么加盟代理 编辑:程序博客网 时间:2024/06/11 16:08

**

关系表中的父子关系表转化成树形列表

**
最近一直在烦恼如何清晰的呈现父子关系表,终于利用哈希表实现,算法和数据结构的使用可能并不是太好。基本的思想是:
1,将父子关系表中的数据取出存入list;
2,定义node,tree结构,定义必要的行为;
3,将list[i]封装为node,然后存入Hashtable tree.nodes,key为nodeid,value为node得到nodes地图;但是现在光有地图还不行,有了地图还要有每个地图点的下属地图索引,这样才能一次找出所有的后代!
4,遍历nodes,由node.parent_id找到父node位置,然后将node.key存入父node的childrennodekeys。这样的到包含子nodes的nodes地图。
5,得到了地图之后就可以根据任意的node找到其所对应的后代。使用递归查询selectnodechildrentree(node f),遍历childrennodes,如果chlidrennode的子node不为零 递归调用selectnodechildrentree(node f)这样就达到了本人想要查询任意chidrentree的目的!

0 0