牛客92485225号
牛客92485225号
全部文章
题解
博客(2)
归档
标签
去牛客网
登录
/
注册
牛客92485225号的博客
全部文章
/ 题解
(共85篇)
题解 | #设计LRU缓存结构#
两个重要的方法set get 用到两个数据结构 双端链表 ,HashMap 这两个一定是同步进行的 put分为 检查链表size size满了 删除first 不含 直接加入 包含 value相同 删除再添加 value不同 删除原来的node 删除新的node get 没找到 返回...
Java
2021-10-22
0
478
题解 | #合并两个有序的数组#
使用归并解法 public class Solution { public void merge(int A[], int m, int B[], int n) { int[] res = new int[m+n]; int i =...
Java
2021-10-20
0
388
题解 | #最小编辑代价#
最小编辑代价 动态规划 dp[i][j]的值 代表str1[0...i-1] 编辑成str2[0...j-1] 边界条件 dp[0][0] = 0; 2 . 矩阵dp第一列即dp[0...i-1][0] 是把str1的字符全部删除为代价 dp[i][0] = dc*i 矩阵dp第一行...
Java
2021-10-20
2
696
题解 | #最长公共子串#
动态规划 确定边界条件 str1[i] = str2[0] 得到 dp[i][0] = 1 str1[0] == str2[j] dp[0][j] = 1 i j 代表以i j 结尾的公共字符串 必须包含 i j 所以 str[i] 不等于 str2[j] 时 dp[i...
Java
2021-10-20
0
511
题解 | #换钱的最少货币数#
1.边界条件: dp[coin] coin 2. 递归公式 : dp[i] = Math.min(dp[i-coin],dp[i]) 3. 返回值 import java.util.*; public class Solution { /** * 最少货币数 * @...
Java
2021-10-19
0
353
题解 | #二叉树的镜像#
先考虑单层 情况 再考虑多层 import java.util.*; /* * public class TreeNode { * int val = 0; * TreeNode left = null; * TreeNode right = null; * publi...
Java
2021-10-18
0
400
题解 | #按之字形顺序打印二叉树#
使用双端队列实现从last 加入 或者first加入 实现逆序 import java.util.ArrayList; import java.util.Deque; import java.util.LinkedList; /* public class TreeNode { int...
Java
2021-10-18
0
423
题解 | #在二叉树中找到两个节点的最近公共祖先#
1.先考虑根节点是最近的祖先 2. 左子树是最近的祖先 3. 右子树是最近的祖先 4. 单层条件是以上 ,然后递归就是额可以了 5. 注意基线条件 import java.util.*; /* * public class TreeNode { * int val = 0; * Tr...
Java
2021-10-18
0
436
题解 | #二叉搜索树的后序遍历序列#
后序遍历 根节点一定是在最后一位 找到第一个 比根节点大的位置m 那么 左子树区域 就是 i->m-1 右子树 区域 就是 m->j-1 public class Solution { public boolean VerifySquenceOfBST(int [] sequ...
Java
2021-10-18
0
383
题解 | #重建二叉树#
1.前序遍历 找到根节点 特性 2. 中序遍历 找到 左半部分 和右半部分 特性 3. 思路 : 先找根节点 然后分治 左半 和右半部分 递归 /** * Definition for binary tree * public class TreeNode { * int va...
Java
2021-10-18
0
364
首页
上一页
1
2
3
4
5
6
7
8
9
下一页
末页