二分查找树和二叉排序树 二叉排序树的构造和查找方法?
二叉排序树的构造和查找方法?
二叉排序树的构造过程:按照给定的顺序,将节点插入到二叉排序树中,再将新节点插入到二叉排序树中,以保证插入的二叉树仍然符合二叉排序树的定义。插入过程:如果二叉排序树为空,则将要插入的节点*s作为根节点插入到空树中;如果不为空,则将要插入的节点的关键字s->key与树根关键字T->key进行比较。如果s->key=t->key,则无需插入;如果s->key< t->key,则插入到根的左子树中;如果s->key> t->key,则插入到根的右子树中。插入子树的过程与插入树的过程相同。此过程将继续,直到节点*作为新叶插入到二叉排序树中,或者直到在树中找到具有相同关键字的节点为止。注:①每插入一个新节点,在二叉排序树中都是一个新的叶节点。(2) 不同的关键字序列可以得到不同的二叉排序树。(3) 对于任意的关键字序列,构造一个二叉排序树对关键字进行实质性排序。搜索过程类似,从根节点开始进行比较,小于根节点的在左子树中,大于根节点的在右子树中,这样查找下去,直到搜索成功或不成功(与叶节点相比)。
二叉查找树和二叉排序树有什么区别?
二叉树和二叉排序树的区别在于:不同的子树节点、不同的键值和不同的子树类型。
1、 1. 二叉树:二叉树左/右子树上所有节点的值可以大于、等于或小于其根节点的值。
2. 二叉排序树:如果二叉排序树的左/右子树不为空,则左/右子树上所有节点的值都小于其根节点的值。
2、二叉树:二叉树可以有具有相等键值的节点。
2. 二叉排序树:二叉排序树没有具有相等键值的节点。
3、 1. 二叉树:二叉树的左右子树也是二叉树。
2. 二叉排序树:二叉排序树的左右子树也是二叉排序树
二层正解
最坏的情况是深度为n的单叉树是(n1)/2
最好的情况是形状均匀,半搜索约为log2n
PS:如果构造完成,例如:
则平均搜索长度为:(1×12×23×44×3)/10=2.9
二分查找树和二叉排序树 二叉排序树和二叉判定树 二叉树优缺点
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。