求一个合理的树结构的结构或者是算法

keephope 2006-11-13 11:35:42
需要实现如下功能

1、可以很方便的生成无限的下级,因为有可能将来会涉及到4级以上的目录结构

2、遍历查询方便快捷,对于不知道具体有多少层的结构可以很方便的进行遍历,而且速度要比较快

3、可以排序,查询后能够自动按照预定的树顺序排序

4、能够随时方便的更改其各级顺序

5、可以跨级更改,例如把一个2级目录的改变为3级目录



主要想问下怎样设计结构比较合理,怎么样设计数据库的列比较合理

目前我使用的是我自己想到的

1、各级都为一个叶子,只记录自己的上级叶子的ID,最高级的上级ID为0

2、排序按照各级的序号排列,只是在本级内排列

遇到的问题是查询起来太烦琐,虽然能够实现对查询结果排序,但是效率比较低

...全文
177 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
keephope 2006-11-28
  • 打赏
  • 举报
回复
还是无法解决按照顺序排列的问题

因为关系到查询后结果排序

所以很麻烦

而加一个绝对的排序ID又会导致可能更改叶子的位置后

整体的排序又会比较麻烦的问题
森林狼 2006-11-21
  • 打赏
  • 举报
回复
在表里多加一个字段,如UpLink,用来放上级的Id,最高级的UpLink为0(必须唯一);
帮顶!
sxnucseven 2006-11-20
  • 打赏
  • 举报
回复
加一个表属性为nodeID 和childID ,两者作联合主键,记录每个叶子的下级ID,相当于建了一个双向索引树,不知道能不能解决上面的问题。
xun56789 2006-11-19
  • 打赏
  • 举报
回复
帮顶

50,549

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧