当前位置: 首页 > news >正文

Leetcode98、230:二叉搜索树

什么是二叉搜索树:右子树节点 > 根节点 > 左子树节点,

  1. 二叉搜索树中的搜索,返回给定值val所在的树节点

    1. 终止条件为传进来的节点为空、或者节点的值 == val值,返回这个节点;

    2. 单程递归逻辑:定义一个result节点接受结果。如果val < root的值,说明 val 的值 应该在当前root的左子树中,result = search(root->left, val); 同理,如果 val > right, 那么 递归遍历右子树。

  2. Leetcode98:验证二叉搜索树 isValidBST( )

      题目描述:

    1.   思路:中序遍历是升序。中序遍历存数组,判断数组是递增的。
    2. 1、参数值 返回值:题目已给

    3. 2、递归终止条件。if( root == nullptr) return true;

    4. 单程搜索逻辑:先左、中、右进行中序遍历数组,然后吧节点值加入到数组中。然后判断数组是否有序。

    5. // 思路2:vector<int> arr;bool isValidBST(TreeNode* root) {if( root == nullptr)    return true;isValidBST(root->left); //一直走到左子树到底arr.push_back(root->val);isValidBST(root->right);//判断arr是否有序for(int i=0; i<arr.size()-1; i++){if(arr[i] >= arr[i+1]){return false;}}return true;}

  3. Leetcode230:二叉搜索树种的第 K 小的元素

    
    

    1. 题目描述:给定一个BFS的根节点root,一个整数K,找到树种第K 小的原色

    2. 思路:中序遍历BFS是升序,中序遍历节点并存到数组vec中,然后从数组中找地k个小的元素,即vec[k-1];

    3. 实现:中序遍历递归三部曲。

      1. 1、返回值和参数。题目已经给出。

      2. 2、递归终止条件。root为空。

      3. 3、单层搜索。先左,在中(中的时候处理一下节点进入数组)。3、在递归右子树。

    4. 代码实现:

    5. class Solution {
      public:vector<int> vec;int kthSmallest(TreeNode* root, int k) {//中序遍历,存数组inorder(root);return vec[k-1];}void inorder(TreeNode* root){if(root == nullptr) return;inorder(root->left);vec.push_back(root->val);inorder(root->right);return;}
      };

相关文章:

  • 【重学Android】03.高版本 Android Studio 不能使用引用库资源ID的问题
  • STM32F103 单片机(基于 ARM Cortex-M3 内核)的启动过程涉及硬件初始化、固件配置和程序执行流程。
  • 一种免费的离线ocr-汉字识别率100%
  • 1656打印路径-Floyd/图论-链表/数据结构
  • 如何使用 uv 构建 Python 包并本地安装
  • 【算法笔记】动态规划基础(一):dp思想、基础线性dp
  • 数据结构与算法学习笔记(Acwing提高课)----动态规划·数字三角形
  • Kubernetes (k8s) 日常运维命令总结
  • 12-DevOps-Gitlab托管Jenkinsfile
  • TDengine 数据订阅设计
  • Linux驱动开发2 - 内核定时器驱动
  • 时序数据库 TDengine 助力石油石化业务, 平滑接替 Oracle 数据库
  • 【GESP】C++二级真题 luogu-B4259 [GESP202503 二级] 等差矩阵
  • Spark集群搭建之Yarn模式
  • PyCharm 链接 Podman Desktop 的 podman-machine-default Linux 虚拟环境
  • LeetCode-46. 全排列
  • 1、AI及LLM基础:OpenAI 开发
  • NoSql文档型数据库——Mongodb
  • Apache中间件解析漏洞与安全加固
  • Python流程控制
  • 商务部:一季度社零总额12.47万亿元,同比增长4.6%
  • 迎世界读书日,2025年首都大学生系列读书活动发布
  • 美国那点事|特朗普的“刀”砍向国务院,美国霸权迎来历史拐点?
  • 王励勤当选中国乒乓球协会新一任主席
  • 网培机构围猎中老年人:低价引流卖高价课、“名师”无资质,舆论呼吁加强监管
  • 视频丨普京称积极对待任何和平倡议