分类: 数据结构 - STEMHA's Blog

B树与B+树详解

基本概念

多路搜索树(multi-way search tree)

  • 将传统的二叉搜索树,改造为多路搜索树——在中序的遍历下,这也是一种等价变换
  • 以k层为间隔如此重组,可以将二叉搜索树转化为等价的2^k路搜索树,统称为多路搜索树。
  • 多路搜索树同样支持查找等操作,而且效果与原来的二叉树完全等同;但是重要的是,其对外存的访问方式已经发生本质变化,是以大节点为单位从外存读取一组(而不是单个)关键码。

B树就是B-树

  • B-树就是B树,中间的横线不是减号,直接读成B树即可。
  • 有的文章里出现的B-树,即为B树。因为B树的原英文名称为B-tree,而国内很多人喜欢把B-tree译作B-树,而事实上是,B-tree就是指的B树。
  • B树是一种多路平衡搜索树,它的每一个节点最多包含K个孩子,k被称为B树的阶
  • k的大小取决于磁盘页的大小
  • B树比较矮胖,扁平化,B-树的宽度往往大于其高度

B+树

  • 是应文件系统所需而产生的一种B-tree的变形树。

红黑树详解

二叉查找树

学习红黑树之前,先理解一下二叉查找树。

数据结构总结

(未完待续)

常用数据结构简述

算法处理的数据在内存中的格式是什么?
我们希望数据是结构化的,方便读取,因此计算机科学家发明了数据结构

哈希表(散列表)详解

基本概念

散列方法(hashing):一种将字符组成的字符串转换为固定长度(一般是更短长度)的数值或索引值的方法。以最基本的向量作为底层支撑结构,通过适当的散列函数在词条的关键码与向量单元的秩之间建立起映射关系
散列表(hashtable):逻辑上由一些列可存放词条(或者其引用)的单元(称作桶(bucket)桶单元)组成。各桶单元按照其逻辑次序在物理上连续排列。通常直接使用数组进行排列,这时散列表也称作桶数组(bucket array)
地址空间(address space):如果桶数组的容量为R,则其中合法秩的区间[0,r)也称作为地址空间。

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×