maomao666
maomao666
全部文章
题解
归档
标签
去牛客网
登录
/
注册
maomao666的博客
全部文章
/ 题解
(共4篇)
题解 | #二叉树的下一个结点#
O(N), O(1) 分类讨论,切记中序遍历,为左根右,因为需求给定结点的下一个结点,所以我们只需要讨论给定结点的右子树部分。同样扩展来说,要求给定的结点的上一个结点,只需要讨论给定结点的左子树部分 分析基于题中此图 (1), pNode.right == null, 例如g结点,我们应该是沿...
Java
二叉树
设计
数学
贪心
双指针
2022-04-26
1
205
题解 | #重建二叉树#
中序和前序或后序,唯一确定一个二叉树 以中序和前序举例,前序[1,2,4,7,3,5,6,8],中序[4,7,2,1,5,3,8,6] 前序遍历规律-根左右可知,第一个数一定是此树的根节点即“1”,又中序遍历规律-左根右,所以找到“1”在中序中的索引,就可以一分为二,左子树中序和右子树中序,基于中序...
Java
二叉树
设计
递归
2022-04-22
1
204
题解 | #二叉树中和为某一值的路径(二)#
O(N),穷举 在递归过程中,递归终止条件很重要,因为只有叶子节点的时候,才可以返回 return; 此代码中,每次减去遍历过的数值expectNumber - root.val,但是切记要回溯 import java.util.*; public class Solution { ArrayLis...
Java
二叉树
数学
2022-04-21
1
210
题解 | #按之字形顺序打印二叉树#
O(N), O(N) 同层序遍历的方法,但是不同的是顺序交替,只能通过别的容器辅助完成,这里选栈,如果继续选择队列,从右到左时,不能辅助完成。通过mark变量标记遍历顺序 代码中,对于二叉树中的每个节点,都会进栈出栈,进队列出队列,所以4N时间,空间即为2N.满足时间和空间复杂度 import ja...
Java
队列
栈
二叉树
数学
2022-03-31
1
204