二叉树与二叉搜索树有什么区别?


回答 1:

1.>二叉树:在二叉树中,每个节点最多可以有2个子节点,并且在二叉树中如何组织节点方面没有顺序。 没有任何子节点的节点称为二叉树的叶节点。 例如:

2.>二进制搜索树:就二进制搜索树中的一个节点可能具有多少个子节点而言,二进制搜索树本质上是一个二进制树,但是二进制树和二进制搜索树之间有一个重要的区别:在二叉搜索树中,节点的组织方式具有相对顺序,而在二叉树中则没有这种排序。 在二叉搜索树中,节点左侧的所有节点的值均小于该节点的值,而节点右侧的所有节点的值均大于该节点的值。

因此,与二叉树相比,在二叉搜索树中,我们可以有效地执行依赖于节点的有序组织的操作。 这样的操作的示例是:在树中查找最小值/最大值,从树中查找大于/小于特定值的所有值,从最小值到最大值遍历树,等等。在纯二叉树上执行此类操作不会很有效。


回答 2:

二进制树-二进制树是一种数据结构,其中每个节点最多具有2个子代(即0个子代,1个子代或2个子代)。

更多细节[1]

二进制搜索树-它是二进制树的应用程序,在其中我们搜索二进制树中的元素。 二进制搜索树不同于二进制树。

在二叉搜索树中,左子节点的值小于根节点的值,右子节点的值大于或等于根节点的值。

脚注

[1]二叉树


回答 3:
  1. 二叉树是其中每个节点都没有,一个或最多两个子节点的树。 父节点和子节点的值之间没有条件或关系,但是在二叉搜索树(它也继承了二叉树的属性)中,值小于父节点的节点必须成为左子节点和该节点值大于或等于父节点的子节点必须成为正确的子节点。这就是为什么在正常的二叉树中您无法说出任何有关随机节点的原因。 就像在二叉搜索树中一样,给定一个随机节点(存在于树中),我可以说它相对于父节点在左子树中还是在右子树中。导致对树元素进行排序。在二进制搜索树调用中的一个元素在O(log n)中以2为底的复杂度进行搜索,但是您不能在普通的二进制树中保证这一点。

据我所知,这些差别不大。 希望这是有用的。

干杯!


回答 4:
  1. 二叉树是其中每个节点都没有,一个或最多两个子节点的树。 父节点和子节点的值之间没有条件或关系,但是在二叉搜索树(它也继承了二叉树的属性)中,值小于父节点的节点必须成为左子节点和该节点值大于或等于父节点的子节点必须成为正确的子节点。这就是为什么在正常的二叉树中您无法说出任何有关随机节点的原因。 就像在二叉搜索树中一样,给定一个随机节点(存在于树中),我可以说它相对于父节点在左子树中还是在右子树中。导致对树元素进行排序。在二进制搜索树调用中的一个元素在O(log n)中以2为底的复杂度进行搜索,但是您不能在普通的二进制树中保证这一点。

据我所知,这些差别不大。 希望这是有用的。

干杯!