首页 新闻 会员 周边

求一个关于树结构的递归函数

0
悬赏园豆:30 [已解决问题] 解决于 2019-01-22 15:05

看了网上很多例子,不适合我当前项目。
我现在只有一个Nodes表。
其中字段

string NodeId,
string ParentId,

然后通过获取所有节点信息,放在List中。
假如存在数据

  1. ST-top 0
  2. ST-01 ST-top
  3. ST-02 ST-top
  4. ST-03 ST-top
  5. ST-0101 ST-01
  6. ST-0102 ST-01
  7. ST-010101 ST-0101

求一个递归函数获取所有节点,放在List中

Melody.Gkx的主页 Melody.Gkx | 初学一级 | 园豆:196
提问于:2018-11-19 15:52

可以使用lamda表达式,

Melody.Gkx 5年前
< >
分享
最佳答案
2

我认为“渔”是帮助,而“鱼”的问题应该不是叫做帮助。

收获园豆:30
花飘水流兮 | 专家六级 |园豆:13560 | 2018-11-19 16:17

递归 你可以分解 ,先实际的求解一级问题,然后写下一级,然后把相同过程及参数合并,变成一个自己调用自己的过程,然后你就构建出来了。

花飘水流兮 | 园豆:13560 (专家六级) | 2018-11-19 16:19
其他回答(1)
1

没看懂这个问题在问啥。

  1. 如果获取所有节点, Select * from Nodes 就行了。
  2. 放在List,不需要递归的,直接放就行了。
  3. 如果你写漏了,获取某个根节点下的所有子、孙节点的话,才有递归一说,
    这时候,代码递归或者SQL CTE都能解决递归问题,而递归代码的写法,
    我相信能够问得出递归这两个字的人,都应该能写,不能写只是懒而已。
爱编程的大叔 | 园豆:30839 (高人七级) | 2018-11-19 16:25

主要是想对每一级的子节点进行排序,所以才要递归 ,直接取所有不能进行分级排序。

支持(0) 反对(0) Melody.Gkx | 园豆:196 (初学一级) | 2018-11-19 17:17

@Melody.Gkx:
你是产品经理吗?新的需求不接!

支持(0) 反对(0) 爱编程的大叔 | 园豆:30839 (高人七级) | 2018-11-20 09:52

@爱编程的大叔: 啊哈?我不是啊

支持(0) 反对(0) Melody.Gkx | 园豆:196 (初学一级) | 2018-11-20 15:03
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册