youxiwang
youxiwang
全部文章
题解
归档
标签
去牛客网
登录
/
注册
youxiwang的博客
全部文章
/ 题解
(共91篇)
题解 | #买卖股票的最好时机(一)#
import java.util.*; public class Solution { public int maxProfit (int[] prices) { int min = Integer.MAX_VALUE; int maxProfit = 0; ...
Java
2022-03-22
0
239
题解 | JAVA 二分查找 #完全二叉树结点数# [P1]
给每个leaf(包括null)编号 A / \ B C / \ / \ D E F # 00 01 10 11 编号对应从root走到这个...
Java
二分查找
2022-03-21
0
362
题解 | JAVA DP #编辑距离(二)# [P1-T2]
来自专栏
跟(一)一样的。 搞清楚插入/删除分别对应的是dp[][]里的哪个位置就行 // dp[i][j]: min # edit to transform str1[0, i] to str2[0, j] // NOTE:因为dp[0][j]对应空字符串str1,dp[i][0]对应空字符串str2, /...
Java
2022-03-14
1
273
题解 | JAVA DP #编辑距离(一)# [P0-T2]
来自专栏
// dp[i][j]: min # edit to transform str1[0, i-1] to str2[0, j-1] // // e.g. str1=abc str2=abd // // if str1[i-1] == str2[j-1] // dp[i][j] = dp[i...
Java
2022-03-14
0
351
题解 | 双指针 #盛水最多的容器# [P0 - T2]
双指针 1. 计算当前左右指针所夹面积 2. 如果lH <= rH, 移动左指针,直到指针所指的高度比之前lH高 (宽变短了, 所以高必须变高才可能面积更大) 3. 如果lH > rH同理。 移动右指针,直到指针所指的高度比之前rH高 import java.util....
Java
2022-03-14
0
331
题解 | #买卖股票的最好时机(二)# [P2]
来自专栏
lastP记录目前为止看到的最低开仓价格 只要第i天的价格比lastP高,就获利了结 import java.util.*; public class Solution { public int maxProfit (int[] prices) { if (prices.le...
Java
2022-03-08
1
330
题解 | JAVA #括号生成# [P0]
对于括号的题,核心基本都是: "一个字符串是合法的括号组合"的*充分必要*条件是: 1. 字符串中开口数等于闭口数 (这是废话) 2. 字符串的所有prefix都满足: 开口数>=闭口数 举个栗子,比如 "()(())": prefix: "(", "()", "(...
Java
2022-03-07
1
422
题解 | #矩阵最长递增路径# [P3]
从矩阵中的每一点开始一遍dfs, dfs时记录目前为止最长递增路径 对于current每个neighbor, 继续dfs的条件是: 1. neighbor没有越界 2. neighbor的值比current大 注意:这题dfs不需要记录visited, 因为能走的路径是单向的(因为condi...
Java
2022-03-07
9
726
题解 | JAVA #N皇后问题# [P0]
递归+回溯 题目理解为: 是否能在满足规则的情况下在每一行都摆一个Queen 请先彻底忘掉对角线的要求。 如果题目只要求每行/列只能有一个queen。以下解法是不是简单易懂: public class Solution { boolean[] colArr; // remembers wh...
Java
2022-03-07
1
426
题解 | JAVA 递归+回溯 #有重复项数字的全排列# [P0]
跟这题一样,还是暴力递归+回溯。只不过多记录个上次选择的数, 然后skip掉所有duplicates. import java.util.*; public class Solution { ArrayList<ArrayList<Integer>> ans = n...
Java
2022-03-07
0
356
首页
上一页
1
2
3
4
5
6
7
8
9
10
下一页
末页