leetcode-501. 二叉搜索树中的众数
leetcode
题目
解法
主要是考的一个特性: 二叉搜索树的中序遍历结果是递增的数列
然后就相当于是对一个递增数列求众数的逻辑了
class Solution { private $maxCount = 0; private $base = null; private $curCount = 0; private $ret = []; /** * @param TreeNode $root * @return Integer[] */ function findMode($root) { $this->mid($root); return $this->ret; } public function mid(TreeNode $root) { if (empty($root)) { return; } if (!empty($root->left)) { $this->mid($root->left); } // 先判断当前值的数量 if (!is_null($this->base) && $root->val == $this->base) { $this->curCount++; } else { $this->curCount = 1; } // 当前值数量大于最大数, 覆盖返回值 if ($this->curCount > $this->maxCount) { $this->ret = [$root->val]; $this->maxCount = $this->curCount; } elseif ($this->curCount == $this->maxCount) { $this->ret[] = $root->val; } $this->base = $root->val; if (!empty($root->right)) { $this->mid($root->right); } } }
参考
本文来自博客园,作者:吴丹阳-V,转载请注明原文链接:https://www.cnblogs.com/wudanyang/p/15758598.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)