locke.code
locke.code
全部文章
分类
题解(27)
归档
标签
去牛客网
登录
/
注册
locke.code的博客
全部文章
(共26篇)
题解 | #岛屿数量#
问题的关键与如何判断一个岛屿。 岛屿是连通的,那么通过深度遍历或者宽度遍历将遍历的过的节点进行标记,当不能标记的时候说明这个岛屿遍历结束。 import java.util.*; public class Solution { /** * 判断岛屿数量 * @param...
Java
深度优先搜索
广度优先搜索
2021-12-16
0
263
题解 | #删除有序链表中重复的元素-II#
三指针,如果一个值与前后都不相等说明这个节点就是不重复的,删除其他节点即可。 首先new一个新的头节点, 遍历链表,如果当前节点与前后节点均不同,则将这个节点加入到新链表中,这里如果pre=null则说明是第一个节点,就不用判断与pre是否相等了,next=null则说明是最后一个节点同理。否则跳过...
Java
双指针
链表
2021-12-13
0
182
题解 | #买卖股票的最好时机(一)#
这里只需要用后面的大的数值,减去前面小的数值,得到最大的差值即可。那么就需要前面的越小越好,后面的越大越好。 import java.util.*; public class Solution { /** * * @param prices int整型一维数组 ...
Java
2021-12-07
0
230
题解 | #表达式求值#
两个栈的方法。 比较有技巧的地方就在每次出现符号的都需要计算,计算的时候根据符号的优先级决定是否计算。 import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 ...
Java
栈
2021-12-05
1
195
题解 | #求平方根#
二分查找的思路。 import java.util.*; public class Solution { /** * * @param x int整型 * @return int整型 */ public int sqrt (int x)...
Java
二分查找
2021-12-04
0
176
题解 | #接雨水问题#
写法上没有太多技巧,先从左向右找,找到一个比当前柱子高的,那么这就形成了一个坑,然后计算坑中的水。 再从右向左好,找到一个比当前柱子高的,计算坑中的水。 import java.util.*; public class Solution { /** * max water ...
Java
双指针
2021-12-04
0
268
题解 | #在二叉树中找到两个节点的最近公共祖先#
递归遍历这棵树,如果在树的左右分别均找到了o1,o2,说明当前节点就是最近的公共祖先。 如果当前节点就是 o1,o2 中的值,且在左右子树中找到了一个,则说明,当前节点就是最近的公共祖先。 如果都不是,则返回当前子树中已经找到的节点。 import java.util.*; /* * publi...
Java
二叉树
模拟
递归
2021-12-01
0
189
题解 | #二分查找-II#
二分查找,找到目标值之后向左寻找不等于target的值,如果找到了则i+1就是答案,如果找不到,那就是0; 这题需要注意的就是边界条件的考虑 import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定...
Java
二分查找
2021-11-28
0
263
题解 | #最长公共子序列(二)#
这题有点难,还要好好琢磨一下。 import java.util.*; public class Solution { /** * longest common subsequence * @param s1 string字符串 the string * @...
Java
2021-11-25
0
237
题解 | #最长公共子串#
动态规划的经典题目,对于动态规划的最大的难点就在于如何定义子问题。 这题定义子问题也有一定的技巧性。这里定义dp[i][j] 为 以str1 的第i个字符和str2的第j个字符结尾的子串的长度 那么状态转移方程如下: 如果str1[i]==str2[j] 那么 dp[i][j] = dp[i-1][...
Java
动态规划
2021-11-23
0
339
首页
上一页
1
2
3
下一页
末页