用C语言实现二叉排序树查找小于关键字key的最大节点的函数-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

用C语言实现二叉排序树查找小于关键字key的最大节点的函数

2016-06-06 11:17:21 2431 4

用C语言实现。
数据结构如下:

typedef struct TreeNode
{
    int Key;
    struct TreeNode *LChlid,*RChlid;
}TreeNode;

以知二叉树有如下特点:左节点数值小于根节点,右节点数值大于根节点,既是一棵二叉排序树。
现在要求编写一个函数TreeNode Find(TreeNode root,int key),在二叉树中找到小于key的最大节点,如果能找到则直接返回该节点,如果不能,则返回NULL。要求Find函数不能调用其它函数,但可以递归调用自身。

取消 提交回答
全部回答(4)
  • 一生有你llx
    2019-07-17 19:27:58

    Node find(Node root,int Key){

    if(root == NULL)

    return NULL;

    if(root.val >= key){

    return find(root.left, key);

    }else{

    Node * tmp = find(root.right, key);
    if(tmp == NULL){
        return root;
    }else{
        return tmp;
    }

    }
    }

    0 0
  • xumaojun
    2019-07-17 19:27:58

    Node find(Node root,int Key){

    if(root == NULL)
        return NULL;
    if(root.val >= key){
        return find(root.left, key);
    }else{
        Node * tmp = find(root.right, key);
        if(tmp == NULL){
            return root;
        }else{
            return tmp;
        }
    }

    }

    0 0
  • nothingfinal
    2019-07-17 19:27:58

    Node find(Node root,int Key){

    if(root == NULL)
        return NULL;
    if(root.val >= key){
        return find(root.left, key);
    }else{
        Node * tmp = find(root.right, key);
        if(tmp == NULL){
            return root;
        }else{
            return tmp;
        }
    }

    }

    0 0
  • a123456678
    2019-07-17 19:27:58
     template<typename T>
        Node* find(Node* root,T Key){
            if(root == NULL)
                return NULL;
            if(root.val >= key){
                return find(root.left, key);
            }else{
                Node * tmp = find(root.right, key);
                if(tmp == NULL){
                    return root;
                }else{
                    return tmp;
                }
            }
        }
    
    0 0
添加回答
相关问答

17

回答

教你如何简单将OSS bucket挂载成为阿里云ECS服务器本地盘

梦丫头 2017-02-17 14:01:12 37986浏览量 回答数 17

5

回答

【阿里云】linux服务器安装nginx配置多个站点两种方法

自娱自乐 2014-03-29 14:53:12 22442浏览量 回答数 5

9

回答

阿里云ECS安装虚拟主机系统DirectAdmin开心版百分百成功的方法

hxs 2014-05-26 20:05:30 34496浏览量 回答数 9

10

回答

AMH5.0安装脚本顺便提醒是收费的每月5元。

是非良人 2014-08-31 15:13:27 20882浏览量 回答数 10

8

回答

阿里云服务器内网传输使用指南

任逍遥 2013-03-22 00:05:42 30761浏览量 回答数 8

3

回答

2020年05月编程排行榜-C语言继2015年,重新成为编程排行榜第一名

huc_逆天 2020-05-06 13:43:42 35578浏览量 回答数 3

4

回答

上传到OSS的文件md5hash值如何获取?!!

asker 2015-08-05 16:52:10 21279浏览量 回答数 4

14

回答

C语言基础 【精品问答合集】

我是管理员 2018-07-13 15:37:00 26679浏览量 回答数 14

10

回答

阿里云centos静默安装oracle

美味的小鱼 2014-08-12 14:23:44 30645浏览量 回答数 10

5

回答

C语言算法 【精品问答合集】

我是管理员 2018-07-13 15:51:28 27076浏览量 回答数 5
+关注
0
文章
14879
问答
问答排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载