陈越-数据结构-二叉树笔记(中)

本文详细介绍了二叉搜索树的操作,包括查找、找最大最小元素、插入和删除。删除节点时涉及叶节点、单子节点和双子节点三种情况。接着讨论了平衡二叉树的概念。
摘要由CSDN通过智能技术生成

一、二叉搜索树

在这里插入图片描述

二叉搜索树相关操作函数
  1. Find,查找
    在这里插入图片描述
TreeNode* Find(ElementType x,TreeNode* BST)
{
   
    while(BST){
   
        if(x > BST->data)
            BST = BST->right;
        else if(x < BST->data)
            BST = BST->left;
        else
            return BST;
    }
    return NULL;        
}    
  1. FindMin and FindMax,寻找最大最小元素
TreeNode* FindMin( TreeNode* BST)
{
   
    if(BST){
   
        while( BST->left)  BST = BST->left;
    }
    return BST;
}
  1. insert ,插入
    在这里插入图片描述
TreeNode* Insert( TreeNode* BST, ElementType X )
{
   
    if( !BST ){
    /* 若原树为空,生成并返回一个结点的二叉搜索树 */
       BST = new TreeNode(X);
    }
    else {
    /* 开始找要插入元素的位置 */
        if( X < BST->Data )
            BST->Left = Insert( BST->Left, X );   /*递归插入左子树*/
        else  if( X > BST->Data )
            BST->Right =<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值