ZhangHao0810
ZhangHao0810
全部文章
分类
面经(3)
题解(28)
归档
标签
去牛客网
登录
/
注册
ZhangHao0810的博客
技术成长,充实生活,轻装简行,快乐出发
全部文章
(共7篇)
题解 | #JZ 26二叉搜索树与双向链表# 好题 再刷!
这道题真的很拿人 二叉搜索树,做边一直递归,要有一个前驱pre节点。 递归到上一级的时候 root 就是pre的后继。 最终若返回pre,那么是降序排列,题干要求升序,故保存第一个节点,返回第一个节点。【多练,多尝试。】 public class Solution { TreeNode p...
剑指Offer
Java
树
二叉搜索树
递归
2021-07-20
16
1431
题解 | #JZ24二叉树中和为某一值的路径#
递归 遇到路径长度的问题,可以利用扣减的方式,返回的是一个字典,故只有遍历到叶子结点 且target扣减到0 为一个字典元素。 ArrayList中有一个 构造,可以传入 Collection接口的实现类。 public class Solution { private ArrayList&...
剑指Offer
Java
栈
集合
递归
树
2021-07-20
13
1042
题解 | #JZ23二叉搜索树的后序遍历序列# 值得多写
二叉搜索树 定义 二叉搜索树是一种节点值之间具有一定数量级次序的二叉树,对于树中每个节点: 若其左子树存在,则其左子树中每个节点的值都不大于该节点值; 若其右子树存在,则其右子树中每个节点的值都不小于该节点值。示例: 题解: 可以利用 二叉搜索树的根节点是左右节点限制这个条件 , 从最底部开始判...
二叉搜索树
树
栈
剑指Offer
Java
算法题解
2021-07-20
0
560
题解 | #JZ22从上往下打印二叉树 #
之前的积累派上用场了,但是一定要多复习。不然就会遇到 知道怎么做,明知道很简单,就是写不出来的尴尬。 牛客的编译器有点猫饼 不能返回null,记住要返回Null的时候,new 一个相应的对象返回它。 if(root==null) return new ArrayList(); if(root==...
剑指Offer
树
Java
2021-07-18
0
426
题解 | #JZ18二叉树的镜像# [ 树,栈,队列 ]三重知识点回顾
本质是二叉树的遍历 我的做法是:递归 从孩子开始, 换孩子,再往上走,直到换到根的两个孩子。等做完之后看题解才后知后觉的明白我的遍历是后序遍历。 public TreeNode Mirror (TreeNode pRoot) { if(pRoot==null) return ...
剑指Offer
树
链表
栈
队列
Java
2021-07-17
0
488
题解 | #ZJ17树的子结构#
树结构,递归思想。 思考了一下,看完题解之后思路清晰地完整给出了解答。但又遇到了空指针异常,一定要注意分析链表,树节点的最后null的情况。 public boolean HasSubtree(TreeNode root1,TreeNode root2) { if(root1...
剑指Offer
树
算法题解
Java
2021-07-17
0
0
题解 | #JZ4重建二叉树#
递归构建二叉树 分析 根据中序遍历和前序遍历可以确定二叉树,具体过程为:根据前序序列第一个结点确定根结点根据根结点在中序序列中的位置分割出左右两个子序列对左子树和右子树分别递归使用同样的方法继续分解 Arrays.copyOfRange() 左闭右开。 可以适当画个图来做。注意 题干中方法的返回...
剑指Offer
Java
算法题解
树
2021-07-12
1
463