首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

为什么文件系统用B数不用平衡二叉树解决方法

2012-06-02 
为什么文件系统用B数不用平衡二叉树为什么操作系统的文件系统用B-树、B+树或者B*树而不用自平衡二叉搜索树(

为什么文件系统用B数不用平衡二叉树
为什么操作系统的文件系统用B-树、B+树或者B*树而不用自平衡二叉搜索树(Balance Binary Search Tree)呢?

大家的时间复杂度都是O(ln n),但B-+*树的空间复杂度明显比平衡二叉搜索树大,操作也复杂,为什么文件系统用B-+*树而不用平衡二叉搜索树呢?

[解决办法]
要尽量减少IO,B树一个节点就是文件系统一个页
[解决办法]
B树是多叉树层次比二叉树低,查找时磁盘IO次数最快情况下就等于树的层次。
[解决办法]
2方面:
1、明显B树属于多叉树,多叉树的高度要明显低于二叉树;
2、B树可以分块读入,同意楼上的,文件系统的速度瓶颈在于硬盘读写,而非内存的读写速度,B树的分块读写可明显减少外存储器的读写次数,提高读写速度。

热点排行