B树与二叉树

作者: Laura McKinney
创建日期: 4 四月 2021
更新日期: 25 四月 2024
Anonim
31 6 3 b树与b+树
视频: 31 6 3 b树与b+树

内容

B树和二叉树之间的区别在于B树是一种排序树,其中节点按有序遍历进行排序,而二叉树是在每个节点处都有一个指针的有序树。


数据结构是计算机编程中最重要的概念,在数据结构中,两个最重要的概念是B树和二叉树。两者互不相同。 B树是一种排序树,其中的节点按顺序遍历进行排序,而二叉树是一种在每个节点处都有一个指针的有序树。 B树和二叉树是非线性数据结构。顾名思义,这两个术语似乎是相同的,但是它们并不相同,因为它们是不同的。二进制树代码存储在RAM中,而B树代码存储在磁盘中。

B树是M平衡树,B树被称为平衡排序树。 B树中有顺序遍历。 B树的空间复杂度为O(n)。插入和删除时间的复杂度为O(log n)。在B树中,树的高度应尽可能小。在B树中,不应有空的子树。树上的所有叶子应处于同一水平。每个节点最多可以有M个子节点,最小M / 2个子节点。 B树中的每个节点的密钥应少于子密钥。在B树中,位于键左侧的子树中的键是其前身。当节点已满时,当您尝试插入新节点时,树将分为两部分。您可以合并B树中的节点,直到删除节点。

一棵二叉树有两个指针,它们包含其子节点的地址。二叉树的类型有严格的二叉树,完整的二叉树,扩展的二叉树等。在严格的二叉树中,必须有左子树和右子树,在完整的二叉树中,应该有两个节点每个级别,并且在线程二叉树中,节点数应为0到2。如果我们谈论横向技术,则三种横向技术分别是顺序横向,前顺序横向和后顺序横向。

内容:B树和二叉树之间的区别

  • 比较表
  • B树
  • 二叉树
  • 关键差异
  • 结论
  • 解释性视频

比较表

基础B树二叉树
基础B树是一种排序树,其中的节点按顺序遍历。二叉树是在每个节点上都有一个指针的有序树。
商店B树代码存储在磁盘中。二进制树代码存储在RAM中
高度B树的高度将为log N二叉树的高度为log2 ñ
应用DBMS是B树的应用程序。霍夫曼编码是二进制树的一种应用。

B树

B树是M平衡树,B树被称为平衡排序树。 B树中有顺序遍历。 B树的空间复杂度为O(n)。插入和删除时间的复杂度为O(log n)。在B树中,树的高度应尽可能小。


在B树中,不应有空的子树。树上的所有叶子应处于同一水平。每个节点最多可以有M个子节点,最小M / 2个子节点。 B树中的每个节点的密钥应少于子密钥。在B树中,位于键左侧的子树中的键是其前身。当节点已满时,当您尝试插入新节点时,树将分为两部分。您可以合并B树中的节点,直到删除节点。

二叉树

一棵二叉树有两个指针,它们包含其子节点的地址。二进制树的类型包括严格的二进制树,完整的二进制树,扩展的二进制树等。

在严格的二叉树中,必须有左子树和右子树,在完整的二叉树中,每个级别应有两个节点,而在线程二叉树中,节点数应为0到2。如果我们谈论横向技术,则有三种横向技术,分别是顺序横向,前顺序横向和后顺序横向。

关键差异

  1. B树是一种排序树,其中节点按顺序遍历进行排序,而二叉树是一种在每个节点处都有一个指针的有序树。
  2. B树代码存储在磁盘中,而二叉树代码存储在RAM中。
  3. B树的高度将为logN,而二叉树的高度将为log2 ñ
  4. DBMS是B树的应用程序,而Huffman编码是Binary Tree的应用程序。

结论

在上面的本文中,我们看到了B树和二叉树及其实现之间的明显区别。

解释性视频