关注Java领域相关技术 记录有趣的事情

Morris

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

问题地址 LeetCode每日一题/2020-09-24 LeetCode501. 二叉搜索树中的众数 问题描述 规则 给定一个有相同值的二叉搜索树(BST),找出 BST 中的所有众数(出现频率最高的元素)。 假定 BST 有如下定义: 结点左子树中所含结点的值小于等于当前结点的值 结点右子树中所含结点的值大于等于当前结点的值 左子树和右子树都是二叉搜索树 示例 示例一: 给定 BST , 1 \ 2 / 2 返回. 提示: 如果众数超过1个,不需考虑输出顺序 进阶 你可以不使用额外的空间吗?(假设由递归产生的隐式调用栈的开销不被计算在内) 解析 解题思路 这个题目最直观的做法是遍历的时候使…
US-B.Ralph
2 years ago

LeetCode-94. 二叉树的中序遍历

问题地址 LeetCode每日一题/2020-09-14 LeetCode94. 二叉树的中序遍历 问题描述 规则 给定一个二叉树,返回它的中序 遍历。 示例 示例: 输入: 1 \ 2 / 3 输出: 进阶 递归算法很简单,你可以通过迭代算法完成吗? 解析 解题思路 递归 二叉树的中序遍历:按照访问左子树——根节点——右子树的方式遍历这棵树,而在访问左子树或者右子树的时候我们按照同样的方式遍历,直到遍历完整棵树。因此整个遍历过程天然具有递归的性质,我们可以直接用递归函数来模拟这一过程。 数据操作分析 根据中序遍历的定义只需要遍历左子树、root、右子树即可 遍历的终止条件是 root==nu…
US-B.Ralph
2 years ago