将平台解析成树的最有效/优雅的方法是什么?
假设您有一个存储有序树层次结构的平面表:
Id Name ParentId Order
1 'Node 1' 0 10
2 'Node 1.1' 1 10
3 'Node 2' 0 20
4 'Node 1.1.1' 2 10
5 'Node 2.1' 3 10
6 'Node 1.2' 1 20
这是我们所拥有的图表[id] Name。根节点0是虚构的。
[0] ROOT
/ \
[1]节点1 [3]节点2
/ \ \
[2]节点1.1 [6]节点1.2 [5]节点2.1
/
[4]节点1.1.1
您将使用什么简约方法将其输出为HTML(或文本,就此而言)作为正确排序,正确缩进的树?
进一步假设你只有基本的数据结构(数组和散列图),没有带有父/子引用的花哨对象,没有ORM,没有框架,只有你的双手。该表表示为结果集,可以随机访问。
伪代码或普通英语是可以的,这纯粹是一个概念性的问题。
额外问题:在RDBMS中存储这样的树结构是否有根本更好的方法?
元芳怎么了
相关分类