社区
数据结构与算法
帖子详情
递归结构如何存储?比如,B+树、链表之类。(菜鸟)
xaqaga
2009-06-28 06:44:27
就是英文单词索引。
首先,是标题上提到的问题,
然后,我的考虑是:
索引加载到内存时,如果记录较少时,正常;记录较多时,异常。
我知道这种情况肯定会出现,但是,多少记录时会出现这种情况?
...全文
195
12
打赏
收藏
递归结构如何存储?比如,B+树、链表之类。(菜鸟)
就是英文单词索引。 首先,是标题上提到的问题, 然后,我的考虑是: 索引加载到内存时,如果记录较少时,正常;记录较多时,异常。 我知道这种情况肯定会出现,但是,多少记录时会出现这种情况?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xaqaga
2009-07-01
打赏
举报
回复
这是个误会
todaylxp
2009-06-30
打赏
举报
回复
我的B+/R+是用std::vector/page
xaqaga
2009-06-29
打赏
举报
回复
[Quote=引用 4 楼 hairetz 的回复:]
引用 2 楼 xaqaga 的回复:
要做一个开放式的数据库,但是,还在准备阶段。
数据结构肯定要自己做,初步的想法是:
采用类似二叉树遍历(比如,中序遍历)的方式,将所有节点依次保存到文件,
但是,恢复的时候怎么办?数据结构不好啊
还有,每次加载索引必须全部加载吗?我想,将B+树(以单词索引为例)从根节点分成若干子树,然后存储到文件,会有更好的效果吗?
恢复的时候,设置一个固定的初始化算法…
[/Quote]
这种方式,对于动态索引有什么要求吗?
xaqaga
2009-06-29
打赏
举报
回复
[Quote=引用 8 楼 litaoye 的回复:]
主要是不知道xml在效率上能否满足LZ的要求,但用xml保存树结构的话,是非常简单的!
引用 7 楼 xaqaga 的回复:
对xml不够了解
[/Quote]
谢谢提示。
还想问一下,如果用两种遍历顺序保存树,效率会怎样?
绿色夹克衫
2009-06-29
打赏
举报
回复
主要是不知道xml在效率上能否满足LZ的要求,但用xml保存树结构的话,是非常简单的!
[Quote=引用 7 楼 xaqaga 的回复:]
对xml不够了解
[/Quote]
xaqaga
2009-06-29
打赏
举报
回复
对xml不够了解
xaqaga
2009-06-29
打赏
举报
回复
to hairetz
其实,我想问有没有与先序(或其他)遍历的逆向算法,可以根据文件中结点次序重建树?
to litaoye
litaoye的方法可以重建,但是,岂不是要将树保存两次,这对于动态索引会不会带来速度问题?
绿色夹克衫
2009-06-29
打赏
举报
回复
只用先序遍历有问题,至少要2个序列才行,比如中序+先序。
另外不知道用xml可以么?
猫已经找不回了
2009-06-29
打赏
举报
回复
[Quote=引用 2 楼 xaqaga 的回复:]
要做一个开放式的数据库,但是,还在准备阶段。
数据结构肯定要自己做,初步的想法是:
采用类似二叉树遍历(比如,中序遍历)的方式,将所有节点依次保存到文件,
但是,恢复的时候怎么办?数据结构不好啊
还有,每次加载索引必须全部加载吗?我想,将B+树(以单词索引为例)从根节点分成若干子树,然后存储到文件,会有更好的效果吗?
[/Quote]
恢复的时候,设置一个固定的初始化算法,根据文件名或者数据的行数,在内存里把文件内容映射到hash表里。(初始化过程稍微久一点),如果需要遍历数据,最好额外给内存里的hash表再建立一个索引。
derek02
2009-06-29
打赏
举报
回复
up//
xaqaga
2009-06-28
打赏
举报
回复
要做一个开放式的数据库,但是,还在准备阶段。
数据结构肯定要自己做,初步的想法是:
采用类似二叉树遍历(比如,中序遍历)的方式,将所有节点依次保存到文件,
但是,恢复的时候怎么办?数据结构不好啊
还有,每次加载索引必须全部加载吗?我想,将B+树(以单词索引为例)从根节点分成若干子树,然后存储到文件,会有更好的效果吗?
neohope
2009-06-28
打赏
举报
回复
[Quote=引用楼主 xaqaga 的帖子:]
就是英文单词索引。
首先,是标题上提到的问题,
然后,我的考虑是:
索引加载到内存时,如果记录较少时,正常;记录较多时,异常。
我知道这种情况肯定会出现,但是,多少记录时会出现这种情况?
[/Quote]
你说的索引,该数据结构是你自己写的吗?
java学习进阶之路,如果从一个
菜鸟
进阶成大神(csdn)————程序.pdf
- **高级数据结构**:深入学习
B+树
、B-树、红黑树和图等更复杂的结构,以及相关的高级算法,如图的搜索算法、最短路径算法、编码和数论方法。 2. **Java语言基础** - **语法与概念**:掌握Java的基本语法,包括...
acm和leetcode难度-leetcodeBylooni::triangular_flag:记录当代大学生刷leetcode的心酸史,正在进行中
递归/迭代解决
链表
问题: 虚拟指针解决
链表
问题(哨兵): Java集合解决
链表
问题 由于自己还很cai,有些题可能不是最优解,只是选了一种自己好理解的解法 3.2 队列(简单分类) 3.3 栈(简单分类) 3.4 树 简单分类 ...
易语言程序免安装版下载
静态编译后的易语言可执行程序(exe)和动态链接库(dll),运行时不再依赖任何支持库文件,文件尺寸更小(相对以前的独立编译),PE结构更合理(取消了“易格式体”),加载速度更快,而且有效解决了“病毒误报”和...
递归算法讲解
原作者:书呆子Rico 《递归的内涵与经典应用》 http://my.csdn.net/justloveyou_摘要: 大师 L. Peter Deutsch 说过:To Iterate is Human, to ...对一些简单的递归问题,我们总是惊叹于递归描述问题的能力和编写代
菜鸟
修行之路----数据结构:树之二叉树(1)
菜鸟
修行之路----数据结构:树之二叉树(1) 树的简单定义: 树(tree)是包含n(n>=0)个结点的有穷集,其中: (1)每个元素称为结点(node); (2)有一个特定的结点被称为根结点或树根(root)。 (3)除根...
数据结构与算法
33,028
社区成员
35,337
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章