当前位置: 首页> 财经> 金融 > 沈阳妇科排名前十的医院_创意设计公司排行榜_最近五天的新闻大事_免费入驻的跨境电商平台

沈阳妇科排名前十的医院_创意设计公司排行榜_最近五天的新闻大事_免费入驻的跨境电商平台

时间:2025/7/29 23:38:34来源:https://blog.csdn.net/weixin_45799371/article/details/146320246 浏览次数:0次
沈阳妇科排名前十的医院_创意设计公司排行榜_最近五天的新闻大事_免费入驻的跨境电商平台

leetcode 501
在这里插入图片描述

思路

由于是二叉搜索树,那么我们知道它的特性:使用中序遍历得到的是从小到大排序的,所以我们利用这个规则,使用count来统计每次出现一个新的数的总个数,maxCount统计最大的个数值,result来存储二叉树中的众数,也就是要得到的结果值,pre用于统计前一个节点值
初始化定义好值以后,我们需要使用中序遍历,中间处理逻辑值
当pre还不存在的时候或者前一个节点跟后一个节点不相同时,说明出现了新的数字,要重新开始统计,更新count = 1, 更新节点为当前节点
如果数字相同的话,那么count++
然后比较maxCount和count的值,如果相等,说明当前值也是最大值,如果maxCount < count,那么说吗之前存在result中的数字都不是最大的数字,现在又出现了更大的数字,所以我们重新设置result为当前的数字
最终返回result

实现

var findMode = function (root) {let count = 0, maxCount = 0;let result = [];let pre = null;const deep = (root) => {if(!root) return;// 左deep(root.left)// 中if(!pre || pre.val !== root.val){count = 1;pre = root;}else{count ++}if(maxCount === count){result.push(root.val)}else if(maxCount < count){maxCount = countresult = [root.val]}// 右deep(root.right)}deep(root)return result;
};
关键字:沈阳妇科排名前十的医院_创意设计公司排行榜_最近五天的新闻大事_免费入驻的跨境电商平台

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: