LeetCode 87. 扰乱字符串(难) 一道挺难的动态规划题目,dp矩阵达到了三维的规模。 关键是理解状态转换方程的推导。 \[ dp[i][j][k] = dp[j][j][w]\ and\ dp[i+w][j+w][k-w] (1 \leq w \leq k-1 ) \] OR \[ dp[i][j][k] = dp[j][j+k-w][w]\ and\ dp[i+w][j][k-w] (1 \leq w \leq k-1 ) \] 2020-03-23 LeetCode 动态规划
LeetCode 85. 最大矩形(难) 84题的改进,从单个直方图变成多个直方图。每行看成一个直方图,累加height,注意判断遇到0的情况即可。 2020-03-22 LeetCode 动态规划 栈和队列
LeetCode 84. 柱状图中最大的矩形 和 11. 盛最多水的容器 类似,使用栈记录遍历的下标,计算最大面积。 关键是清楚计算触发的位置在局部峰值处。 只要当前的数字大于后面的一个数字,那么当前数字就看作一个局部峰值,跟前面的数字大小无关。 2020-03-22 LeetCode 贪心算法 栈和队列
LeetCode 81. 搜索旋转排序数组 II(中) LeetCode 33. 搜索旋转排序数组 的改进。 出现了重复数字,需要在二分查找的预处理阶段进行一些特殊判断。 2020-03-21 LeetCode 二分查找和搜索