给定一个有相同值的二叉搜索树(BST),找出 BST 中的所有众数(出现频率最高的元素)。

假定 BST 有如下定义:

结点左子树中所含结点的值小于等于当前结点的值
结点右子树中所含结点的值大于等于当前结点的值
左子树和右子树都是二叉搜索树

例如:
给定 BST [1,null,2,2],

   1\2/2

返回[2].

提示:如果众数超过1个,不需考虑输出顺序

代码如下:

/*** 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 base = 0;int cnt = 0;int maxcnt = 0;vector<int>ans;vector<int> findMode(TreeNode* root) {dfs(root);return ans;}void compare_node(int x){if (x==base){cnt++;}else{base = x;cnt = 1;}if (cnt == maxcnt) ans.push_back(base);if (cnt > maxcnt){maxcnt = cnt;ans = vector<int>{base};}}void dfs(TreeNode *root){if (root==nullptr) return ;dfs(root->left);compare_node(root->val);dfs(root->right);}};

LeetCode 501二叉搜索树中的众数-简单相关推荐

  1. LeetCode 501. 二叉搜索树中的众数(中序遍历)

    文章目录 1. 题目 2. 中序遍历 1. 题目 给定一个有相同值的二叉搜索树(BST),找出 BST 中的所有众数(出现频率最高的元素). 假定 BST 有如下定义: 结点左子树中所含结点的值小于等 ...

  2. 74. Leetcode 501. 二叉搜索树中的众数 (二叉搜索树-中序遍历类)

    给你一个含重复值的二叉搜索树(BST)的根节点 root ,找出并返回 BST 中的所有 众数(即,出现频率最高的元素).如果树中有不止一个众数,可以按 任意顺序 返回.假定 BST 满足如下定义:结 ...

  3. LeetCode 501. 二叉搜索树中的众数

    https://leetcode-cn.com/problems/find-mode-in-binary-search-tree/ 难度:简单   给定一个有相同值的二叉搜索树(BST),找出 BST ...

  4. leetcode 501. 二叉搜索树中的众数(Java版)

    题目 https://leetcode-cn.com/problems/find-mode-in-binary-search-tree/ 题解 中序遍历二叉搜索树,可以得到一个有序序列. 遍历这个有序 ...

  5. leetcode 501. 二叉搜索树中的众数 思考分析

    目录 题目 1.不考虑BTS性质,直接寻找众数集合(利用map) 2.考虑BTS的中序遍历结果性质 题目 给定一个有相同值的二叉搜索树(BST),找出 BST 中的所有众数(出现频率最高的元素). 假 ...

  6. [力扣] 501. 二叉搜索树中的众数

    501 二叉搜索树中的众数 给定一个有相同值的二叉搜索树(BST),找出 BST 中的所有众数(出现频率最高的元素). 例如: 给定 BST [1,null,2,2], 返回[2]. 提示:如果众数超 ...

  7. Suzy找到实习了吗 Day 21 | 二叉树进行中:530. 二叉搜索树的最小绝对差,501. 二叉搜索树中的众数,236. 二叉树的最近公共祖先

    530. 二叉搜索树的最小绝对差 题目 给你一个二叉搜索树的根节点 root ,返回 树中任意两不同节点值之间的最小差值 .差值是一个正数,其数值等于两值之差的绝对值. solution # Defi ...

  8. leetcode系列-501. 二叉搜索树中的众数

    题目描述:给你一个含重复值的二叉搜索树(BST)的根节点 root ,找出并返回 BST 中的所有 众数(即,出现频率最高的元素).如果树中有不止一个众数,可以按 任意顺序 返回.假定 BST 满足如 ...

  9. 力扣501. 二叉搜索树中的众数(JavaScript)

    //使用双指针记录同一值的出现次数 var findMode = function(root) {let p=rootlet count=0 //次数let max=1let arr=[]const ...

最新文章

  1. 用C#生成随机中文汉字验证码的基本原理
  2. windows下编译boost
  3. java代码如何与界面联系在一起_如何在Visual Studio Code 中编写Java代码
  4. DPDK — OvS-DPDK
  5. WIN7服务优化,别关太多,小心启动不
  6. Python-OpenCV 笔记2 -- 图像的基本属性和操作
  7. C的无符号数据类型int,short,byte 转为 Java对应的数据long,char,short
  8. struts2在action中获取request、session、application,并传递数据
  9. 3.abp框架code first方式创建表
  10. web前端开发视频教程完整54讲下载
  11. 考研数学常见的函数图像
  12. 禅道类似软件_五款免费项目管理软件推荐
  13. Edge浏览器驱动更新
  14. 这几天很可能是因为时差倒坏了
  15. mysql where查询字段是json,mysql json查询某字段包含a和b:
  16. 阿里云智能编码插件,Cosy文档搜索上新了
  17. //css 层叠样式表(Cascading Style Sheets)
  18. 搜索引擎排名都选乐云seo_乐云百度爱采购排名关键词的部署方法_乐云SEO
  19. Linux命令(13)——实时监控进程、监控网络
  20. 机器学习-特征归一化

热门文章

  1. 【ArcGIS遇上Python】ArcGIS Python按照指定字段批量筛选不同类型的图斑(以土地利用数据为例)
  2. 【ArcGIS微课1000例】0004:值提取至点(Extract value to point)
  3. C#服务器编程:WebService、Ajax与回调函数(一)
  4. 【ArcGIS遇上Python】长时间序列(30年)每两组栅格数据对应做减法运算求物候参数
  5. linux shell之cut命令
  6. 她花了8个月让骗子爱上自己,然后把骗子引到警察局......
  7. 她13岁自己造飞机,17岁进麻省理工,3篇黑洞论文被霍金引用......
  8. 如何才能避免聚会尬聊
  9. 有趣的物理照片,让你瞬间爱上物理!
  10. 这本 “写不完” 的黑科技笔记本,恐怕要颠覆整个行业!