社区
C++ 语言
帖子详情
从磁盘文件读入数据构造B树方法
LZQGdut
2011-06-07 09:14:45
请教各位一个问题…… 我把一些数据提前存取在磁盘文件中,怎么从磁盘文件读入然后构造B树呢?接着构造B树成功后,如果在程序运行过程中对B树进行更新操作(比如删除、添加结点等),又要怎么去把这些数据重新写入磁盘并且要保持B树形态,以便下次读取呢?
...全文
103
3
打赏
收藏
从磁盘文件读入数据构造B树方法
请教各位一个问题…… 我把一些数据提前存取在磁盘文件中,怎么从磁盘文件读入然后构造B树呢?接着构造B树成功后,如果在程序运行过程中对B树进行更新操作(比如删除、添加结点等),又要怎么去把这些数据重新写入磁盘并且要保持B树形态,以便下次读取呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yfk
2011-06-07
打赏
举报
回复
自己定义读写构造方式~
c_losed
2011-06-07
打赏
举报
回复
结构体和指针加b树算法
野男孩
2011-06-07
打赏
举报
回复
额。。。你需要从头好好学习一下什么是BTree
【操作系统】模块六 :
文件
系统 (Linux
文件
目录 |
文件
系统 |
B树
B+树 |分布式
文件
系统)
【操作系统】模块六 :
文件
系统 Linux的
文件
目录 分区结构 挂载 目录结构 /usr(Unix System Resource) 包含系统需要的资源
文件
,通常应用程序会把后来安装的可执行
文件
也放到这个目录下,比如说
文件
系统底层设计 FAT、NTFS 和 Ext3
文件
系统有什么区别? 硬盘分块
文件
的描述 目录的实现 软链接 总结 FAT、NTFS 和 Ext3 有什么区别? MySQL 的
B树
和 B+树 行存储和列存储 行存储 列存储(Column Storage) 为什么行存储更适合事务? 索
数据
结构——【
B树
与B+树】
目录
B树
的特性
B树
存储
数据
B树
在
磁盘
文件
中的应用 B+树的特性 B+树存储
数据
B+树和
B树
的对比 B+树在
数据
库中的应用
B树
是一种树状
数据
结构,它能够存储
数据
、对其进行排序并允许以O(logn)的时间复杂度进行查找、顺序读取、插入和删除等操作。
B树
的特性
B树
中允许一个结点中包含多个key,可以是3个、4个、5个甚至更多,并不确定,需要看具体的实现。现在我们选择一个参数M,来
构造
一个
B树
,我们可以把它称作是M阶的
B树
,那么该树会具有如下特点: ·每个结点最多有M-1个key
从
B树
、B+树、B*树谈到R 树
从B 树、B+ 树、B* 树谈到R 树 作者:July、weedge、Frankie。编程艺术室出品。 说明:本文从
B树
开始谈起,然后论述B+树、B*树,最后谈到R 树。其中
B树
、B+树及B*树部分由weedge完成,R 树部分由Frankie完成,全文最终由July统稿修订完成。 出处:http://blog.csdn.net/v_JULY_v 。 第一节、
B树
、B+树、B*...
数据
结构——
B树
和B+树
平衡二叉树或红黑树的查找效率最高,时间复杂度是O(nlogn)。但不适合用来做
数据
库的索引树。因为
磁盘
和内存读写速度有明显的差距,
磁盘
中存储的
数据
需要先读取到内存中才能进行高速的检索。而
数据
库当中存储着海量的
数据
,光是
数据
库索引就有可能占据几个GB甚至更大的空间。当我们要查找
数据
的时候,显然不可能把整个索引树读到内存中。因此,我们只能以索引树的节点为基本单元,每次把单一节点从
磁盘
读取到内存当中,进行后续操作。
数据
结构之B+树及其实现
上一篇
B树
及其实现 下一篇 红黑树及其实现 简介 B+ 树是一种树
数据
结构,是一个n叉树,每个节点通常有多个孩子,一颗B+树包含根节点、内部节点和叶子节点。B+ 树通常用于
数据
库和操作系统的
文件
系统中。 B+ 树的特点是能够保持
数据
稳定有序,其插入与修改拥有较稳定的对数时间复杂度 B+树是
B树
的变体,也是一种多路搜索树。
B树
相对于B+树的优点是,如果经常访问的
数据
离根节点很近,而
B树
的非叶子节点本身存有关键字其
数据
的地址,所以这种
数据
检索的时候会要比B+树快。 B+树性质: 1 B+树的搜索与B
C++ 语言
64,687
社区成员
250,497
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章