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

【LC刷题】DAY16:530 501 236

【LC刷题】DAY16:530 501 236

文章目录

  • 【LC刷题】DAY16:530 501 236
    • 530. 二叉搜索树的最小绝对差 [link](https://leetcode.cn/problems/minimum-absolute-difference-in-bst/description/)
    • 501.二叉搜索树中的众数
    • 236. 二叉树的最近公共祖先 [link](https://leetcode.cn/problems/minimum-absolute-difference-in-bst/description/)

530. 二叉搜索树的最小绝对差 link

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode() : val(0), left(nullptr), right(nullptr) {}*     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}*     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:vector<int> vec;void traverse(TreeNode* root){if(!root){return;}if(root->left) traverse(root->left);vec.push_back(root->val);if(root->right) traverse(root->right);}int getMinimumDifference(TreeNode* root) {vec.clear();traverse(root);int result = INT_MAX;for(int i = 1; i < vec.size(); i++){result = min (result, vec[i] - vec[i - 1]);}return result;}
}; 

501.二叉搜索树中的众数

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode() : val(0), left(nullptr), right(nullptr) {}*     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}*     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}* };*/
class Solution {
public:int maxCount = 0;int count = 0;TreeNode* pre = nullptr;vector<int> result;void searchBST(TreeNode* cur){if(cur == nullptr) return;searchBST(cur->left);if(pre == nullptr){count = 1;}else if(pre->val == cur->val){count ++;}else{count = 1;}pre = cur;if(count == maxCount){result.push_back(cur->val);}if(count > maxCount){maxCount = count;result.clear();result.push_back(cur->val);}searchBST(cur->right);return ;}vector<int> findMode(TreeNode* root) {count = 0;maxCount = 0;pre = nullptr;result.clear();searchBST(root);return result;}};

236. 二叉树的最近公共祖先 link

/*** Definition for a binary tree node.* struct TreeNode {*     int val;*     TreeNode *left;*     TreeNode *right;*     TreeNode(int x) : val(x), left(NULL), right(NULL) {}* };*/
class Solution {
public:TreeNode* lowestCommonAncestor(TreeNode* root, TreeNode* p, TreeNode* q) {if(root ==  q || root == p || root == nullptr) return root;TreeNode* left = lowestCommonAncestor(root->left, p, q);TreeNode* right = lowestCommonAncestor(root->right,p ,q);if(left != nullptr && right != nullptr) return root;if(left == nullptr) return right;return left;}
};
http://www.lryc.cn/news/383380.html

相关文章:

  • Vue 3 的 Teleport 组件实现跨层级通信
  • chromadb
  • Gradle 自动化项目构建-Gradle 核心之 Project
  • 简单介绍 Kamailio cfg_rpc 模块
  • Windows 根据github上的环境需求,安装一个虚拟环境,安装cuda和torch
  • LeetCode 179. 最大数
  • 基于Java+SpringBoot+vue+elementui药品商城采购系统详细设计实现
  • Pikachu靶场--文件上传
  • 突破架构瓶颈:克服软件系统中的漂移和侵蚀
  • 每日练题(py,c,cpp).6_19,6_20
  • 居中显示-css样式
  • 生骨肉冻干喂猫比较好?热门、口碑好、值得入手生骨肉冻干力荐
  • 【安卓13 源码】RescueParty救援机制
  • 详细介绍iutils.dll丢失的多个解决方法,一键快速修复丢失的iutils.dll文件
  • 基于SpringBoot+Vue的美容美发在线预约系统的设计与实现【附源码】
  • 语言的数据结构:树与二叉树(二叉树篇)
  • 若以框架学习(3),echarts结合后端数据展示,暂时完结。
  • Spring Boot循环依赖(解决)
  • emqx4.4.3关于如何取消匿名登录,添加认证用户这件事
  • 七天速通javaSE:第三天 程序控制结构:练习题
  • 新增题目接口开发
  • 国内怎样使用GPT4 turbo
  • 【语义分割】1-标注数据集-【单张图片】labelme标注json文件转mask
  • c++: 理解编译器在背后所做的工作-工具篇
  • Verilog HDL语法入门系列(三):Verilog的语言操作符规则(上)
  • IT营大地老师是谁,怎么什么都会?
  • 【python013】pyinstaller打包PDF提取脚本为exe工具
  • VUE div的右上角的角标/标签
  • WPS复制后转置粘贴
  • Shell编程之正则表达式与文本处理器