美文网首页
4.1二叉搜索树

4.1二叉搜索树

作者: 哈喽阿甘 | 来源:发表于2017-10-28 15:30 被阅读0次

查找问题:

静态查找与动态查找

针对动态查找,数据如何处理

>二叉搜索树:一颗二叉树,可以为空,如果不为空,满足以下性质:

>>1.非空左子树的所有键值小于其根结点的键值。

>>2.非空右子树的所有键值大于其根结点的键值。

>>3.左右子树都是二叉搜索树。

简单的说就是左边小右边大。

二叉搜索树操作的特别函数:

Position Find(ElementType X, BinTree BST):从二叉搜索树BST中查找元素X,并返回其所在结点的地址;

Position FindMin( BinTree BST):从二叉搜索树BST中查找并返回最小元素所在节点的地址。

Position FindMax( BinTree BST):从二叉搜索树BST中查找并返回最大元素所在节点的地址。

BinTree Insert(ElementType X,BinTree BST)

BinTree Delete(ElementType X,BinTree BST)

>Position Find(ELementType X , BInTree BST)

{

if(!BST)  return  NULL;/*查找失败*/

if( x.> BST->Data)

return Find(X,BST->Right);/*在右子树中继续查找/

Else if ( X <BST->Data)

       return Find(X,BST->Left);/*在左子树中继续查找/

else/*X==BST->Data/

return BST;/查找成功,返回结点的找到的节点的地址

}

尾递归,尾递归都可以用循环来实现。

查找效率取决于速度高度      

二叉搜索树的插入

关键是找到元素应该插入的位置,可以采用与find类似的方法。

字典字母顺序排列

###二叉搜索树的删除

三种情况:

1.要删除的是叶节点:直接删除

2.要删除的结点只有一个孩子节点:

3.要删除的结点有左右两棵子树:用另一节点代替被删除节点:右子树的最小元素 或者做字数的最大元素

相关文章

  • BST二叉搜索树、BBST :AVL树、伸展树、红黑树、b树、k

    4.1 二叉搜索树 4.2 控制树高 ,制造平衡二叉搜索树 zig右旋zag左旋不改变中序遍历顺序,通过增加局部限...

  • 数据结构与算法之二叉搜索树(八)

    目录 二叉搜索树概念二叉搜索树的接口设计,包括增,删,改,查平衡二叉搜索树 一 二叉搜索树 二叉搜索树是二叉树的一...

  • 4.1 二叉搜索树

    1.二叉搜索树(BST,Binary Search Tree), 也称二叉排序树或二叉查找树 二叉搜索树:一棵二叉...

  • 4.1二叉搜索树

    查找问题: 静态查找与动态查找 针对动态查找,数据如何处理 >二叉搜索树:一颗二叉树,可以为空,如果不为空,满足以...

  • Algorithm小白入门 -- 二叉搜索树

    二叉搜索树二叉搜索树 BSTBST 的基本操作计算合法的 BST 1. 二叉搜索树 BST 二叉搜索树(Binar...

  • 二叉搜索树

    二叉搜索树 图解二叉树搜索算法图解:二叉搜索树算法二叉查找树(Binary Search Tree),(又:二叉搜...

  • 23-红黑树

    1.二叉搜索树(BST)继承二叉树(BinaryTree) 2.平衡二叉搜索树(BBST)继承二叉搜索树(BST)...

  • 二叉搜索树(Binary Search Tree)

    1. 定义 二叉搜索树(BST)又叫二叉查找树,二叉排序树。二叉搜索树就是一棵二叉树,但是它又具有搜索树的特征: ...

  • 二叉树基础

    二叉树的分类 完全二叉树与满二叉树 二叉搜索树BST 平衡二叉搜索树BBST因为二叉搜索树有可能退化为链表,降低查...

  • 数据结构 经典算法复习

    二叉搜索树, 平衡二叉树(AVL) 红黑树 B树(平衡多路搜索树) B+树(在B树上改造) 二叉搜索树...

网友评论

      本文标题:4.1二叉搜索树

      本文链接:https://www.haomeiwen.com/subject/hybjpxtx.html