码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 头歌-数据结构-二叉查找树的应用


    第1关:二叉排序树应用一

    1. #include "binary_sort_tree.h"
    2. BiTreeNode* insertBiSortTree(BiTreeNode* root, int key)
    3. // 功能:实现向升序二叉排序树插入元素
    4. // 输入:待插入元素key
    5. // 返回:升序二叉排序树根节点
    6. {
    7. // 请在这里补充代码,完成本关任务
    8. /********** Begin *********/
    9. if (root == NULL)
    10. {
    11. BiTreeNode *newNode = new BiTreeNode(key);
    12. return newNode;
    13. }
    14. if (root->data>key) {
    15. if(root->left) insertBiSortTree(root->left, key);
    16. else root->left=new BiTreeNode(key);
    17. }else
    18. {
    19. if(root->right) insertBiSortTree(root->right, key);
    20. else root->right=new BiTreeNode(key);
    21. }
    22. return root;
    23. /********** End **********/
    24. }
    25. BiTreeNode* creatBiSortTree(int* arr, int n)
    26. // 功能:实现创建升序二叉排序树
    27. // 输入:无序整数数列arr,数列个数n
    28. // 返回:升序二叉排序树根节点
    29. {
    30. // 请在这里补充代码,完成本关任务
    31. /********** Begin *********/
    32. if(!arr) return NULL;
    33. BiTreeNode* bt=NULL;
    34. for(int i=0 ; i
    35. bt=insertBiSortTree(bt, arr[i]);
    36. }
    37. return bt;
    38. /********** End **********/
    39. }

    第2关:二叉排序树应用二

    1. #include "binary_sort_tree.h"
    2. int* InOrder(BiTreeNode* root, int* arr, int &i)
    3. // 功能:实现升序二叉排序树的中序遍历
    4. // 参数:二叉树根节点root,整数数列arr,起始下标i=0
    5. // 返回:中序遍历数列arr
    6. {
    7. // 请在这里补充代码,完成本关任务
    8. /********** Begin *********/
    9. if(!root) return NULL;
    10. InOrder(root->left, arr, i);
    11. arr[i++]=root->data;
    12. InOrder(root->right, arr, i);
    13. return arr;
    14. /********** End **********/
    15. }
    16. bool isOrder(int* arr, int n)
    17. // 功能:判断数列arr是否升序
    18. // 参数:数列arr,数列个数n
    19. // 返回:若升序返回true,否则返回false
    20. {
    21. // 请在这里补充代码,完成本关任务
    22. /********** Begin *********/
    23. for(int j=0 ; j-1; j++)
    24. {
    25. if(arr[j+1]return false;
    26. }
    27. return true;
    28. /********** End **********/
    29. }

  • 相关阅读:
    【C ++基础】迭代器(iterator)在string里面的简单使用
    微积分学习笔记(2):用Go语言画函数图像
    HarmonyOS ArkUI实战开发-NAPI 加载原理(上)
    计算机毕业设计ssm儿童成长记录与分享系统cc35g系统+程序+源码+lw+远程部署
    测试--自动化测试:关于unittest框架
    Springboot项目中@JsonProperty不生效-如何处理呢?
    红绿正方形染色问题
    【MySQL系列】MySQL的用户管理
    lodash常用方法合集
    【建议背诵】软考高项考试案例简答题汇总~(5)
  • 原文地址:https://blog.csdn.net/toptopniba/article/details/134383837
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号