ZhangHao0810
ZhangHao0810
全部文章
分类
面经(3)
题解(28)
归档
标签
去牛客网
登录
/
注册
ZhangHao0810的博客
技术成长,充实生活,轻装简行,快乐出发
全部文章
(共13篇)
题解 | #JZ23二叉搜索树的后序遍历序列# 值得多写
二叉搜索树 定义 二叉搜索树是一种节点值之间具有一定数量级次序的二叉树,对于树中每个节点: 若其左子树存在,则其左子树中每个节点的值都不大于该节点值; 若其右子树存在,则其右子树中每个节点的值都不小于该节点值。示例: 题解: 可以利用 二叉搜索树的根节点是左右节点限制这个条件 , 从最底部开始判...
二叉搜索树
树
栈
剑指Offer
Java
算法题解
2021-07-20
0
560
题解 | #ZJ17树的子结构#
树结构,递归思想。 思考了一下,看完题解之后思路清晰地完整给出了解答。但又遇到了空指针异常,一定要注意分析链表,树节点的最后null的情况。 public boolean HasSubtree(TreeNode root1,TreeNode root2) { if(root1...
剑指Offer
树
算法题解
Java
2021-07-17
0
489
题解 | #JZ11二进制中1的个数#
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示 如果一个整数不为0,那么这个整数至少有一位是1。如果我们把这个整数减1,那么原来处在整数最右边的1就会变为0,原来在1后面的所有的0都会变成1(如果最右边的1后面还有0的话)。其余所有位将不会受到影响。 举个例子:一个二进制数1100,...
剑指Offer
算法题解
数学
位运算
2021-07-16
0
419
题解 | #JZ10矩形覆盖#
FeiBo永远的神。青蛙跳台永远的神。 见得多了,就能总结出这一类题目的解法。 使用动态规划:递推优化要先分析题目,找到其中的一些规律。 public int rectCover(int target) { if(target<=3) return target; ...
剑指Offer
Java
算法题解
动态规划
2021-07-15
0
460
题解 | #JZ9跳台阶扩展问题#
要勇敢的递推试一下,数学关系要搞明白,算法其实就是考察数学。 递推式子: 1(1),2(1+1),4(1+2+1),8(1+2+4+1),16(1+2+4+8+1) public int jumpFloorII(int target) { if (target == 0 || tar...
剑指Offer
Java
算法题解
2021-07-15
0
498
题解 | #JZ8跳台阶#
本题的本质就是就是Fibo数列,只是初始值不一样。 更多详细见 : 题解 #JZ7斐波那契数列。 使用递推去解。 一定要有举一反三的能力! 将学到的知识应用到新题型上面! 面试用这个: public class Solution { public int jumpFloor(int targ...
剑指Offer
动态规划
Java
算法题解
2021-07-13
0
349
题解 | #JZ7斐波那契数列#
同样的类型的题还有兔子繁殖的问题。此题可以用丰富的解法来解答。考察知识:[递归],[记忆化搜索],[动态规划], [递推]。难度:一星 1 分治 分治思想简述 当一个问题规模较大且不易求解的时候,就可以考虑将问题分成几个小的模块,再逐一解决; 分治思想一般都会和递归一起使用,因为采用分治...
剑指Offer
Java
算法题解
动态规划
分治法
2021-07-13
0
438
题解 | #JZ6旋转数组的最小数字#
考察特殊的 二分查找 题干中有一个概念没有理解,导致想不明白题意:非递减数组, 意思是:数组中没有任何部分是递减的! 122344 非递减数组的旋转,就是将后边一部分元素挪到了前面,导致原本处在第一位的最小元素去到中间了。题目要找到并输出这个最小元素。查找元素嘛, 二分查找法适用。 但是最小元素不...
剑指Offer
Java
算法题解
二分查找
2021-07-13
0
452
题解 | #JZ5用两个栈实现队列#
考察 栈 本题要点: 只有输出栈空的时候,才允许将输入栈的数据pop过去。 逻辑问题!! 想明白了。 public class Solution { Stack<Integer> stack1 = new Stack<Integer>(); Stack<...
剑指Offer
Java
算法题解
栈
2021-07-13
0
502
题解 | #JZ4重建二叉树#
递归构建二叉树 分析 根据中序遍历和前序遍历可以确定二叉树,具体过程为:根据前序序列第一个结点确定根结点根据根结点在中序序列中的位置分割出左右两个子序列对左子树和右子树分别递归使用同样的方法继续分解 Arrays.copyOfRange() 左闭右开。 可以适当画个图来做。注意 题干中方法的返回...
剑指Offer
Java
算法题解
树
2021-07-12
1
452
首页
上一页
1
2
下一页
末页