随笔分类 - LeetCode
摘要:"题目" DFS,
阅读全文
摘要:"题目"
阅读全文
摘要:"题目"
阅读全文
摘要:"题目"
阅读全文
摘要:"题目" 非常简单的BFS 暴搜
阅读全文
摘要:"题目" 我是按照边进行二分的
阅读全文
摘要:"题目"
阅读全文
摘要:"题目"
阅读全文
摘要:"LeetCode Contest 166" 第一次知道LeetCode 也有比赛。 很久没有打过这种线上的比赛,很激动。 直接写题解吧 "第一题" 很弱智 "第二题" 也很简单的,我先排个序。 但是在用c++的快排的时候,被坑了,我一直的习惯是写自定义比较函数,没有写运算符重载,不知道为什么一直R
阅读全文
摘要:"题目" 格雷码 000 001 011 010 110 111 101 就是相邻的两个码之间只变动一个bit, 格雷码的构造方法可以递推得到,它是一个有规律的序列。 具体n的格雷码,可以由n 1得到,方法就是如下图所示,摘自维基百科 当然也有通项公式,用位运算写起来,也巨简单,虽然不知道为什么:
阅读全文
摘要:"题目" 一开始我读错了题意,以为是二分, 结果却是动态规划的区间DP 我都状态数组是dp[i1][j1][i2][j2],表示第一个字符串的i1到j1区间和第二个字符串的i2到j2区间,是符合条件,是可以旋转转换的。 string最大的长度也不过50多个吧。 所以险过。 状态转移方程,很简单啦,将
阅读全文
摘要:"题目" 操作指针的题目
阅读全文
摘要:"题目" 此题目动态规划可以解 在矩阵上一层一层递推。 dp[i][j]表示当前层,从i到j 可以形成矩形的最大面积。 需要有两个DP数组,dp[i][j] 和dp2[i][j] , 在递推的过程相互轮换。dp[i][j]表示上一层的状态数组,dp2[i][j]表示当前层的状态数组 状态转移方程是
阅读全文
摘要:"题目" 单调栈。 如果用O(n^2)的算法,必定超时。 所以我们可以用单调栈,来实现O(n)效率的算法。 单调栈是递增的,每个长方形入栈时,都和栈顶的长方形高度对比,如果大于,则入栈。如果小于则按照高度合并长方形,直到比它高度小的元素,然后再进栈。 最后挨个出栈。 而出栈的过程才是真正计算长方形面
阅读全文
摘要:"题目" c++
阅读全文
摘要:"题目" c++
阅读全文
摘要:"题目"
阅读全文
浙公网安备 33010602011771号