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。如果我们谈论横向技术,则有三种横向技术,分别是顺序横向,前顺序横向和后顺序横向。
关键差异
- B树是一种排序树,其中节点按顺序遍历进行排序,而二叉树是一种在每个节点处都有一个指针的有序树。
- B树代码存储在磁盘中,而二叉树代码存储在RAM中。
- B树的高度将为logN,而二叉树的高度将为log2 ñ
- DBMS是B树的应用程序,而Huffman编码是Binary Tree的应用程序。
结论
在上面的本文中,我们看到了B树和二叉树及其实现之间的明显区别。