![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode 刷题
Sadsongs
这个作者很懒,什么都没留下…
展开
-
LeetCode 207.课程表(循环删除入度为0的节点)
LeetCode 207课程表详细题目[link]https://leetcode-cn.com/problems/course-schedule/题目分析题目理解比较简单,可以建模成有向图,然后问题转化成有向图有无环。读完就想到了拓扑排序问题,可是太久没写了,有点忘了,最初就用DFS用时间戳去判环,可是写完就发现问题。后来还是决定用拓扑排序去做。我的拓扑排序可能有点不一样。我使用...原创 2019-09-27 13:43:01 · 374 阅读 · 0 评论 -
LeetCode 92.反转链表 ||
LeetCode 92.反转链表 II详细题目题目分析题目大概意思是反转链表的m到n的节点。解题思路大致就是记录下m前和n之后的断点,然后反转中间的链表,再接回原链表。代码代码写的逻辑稍微有点乱。。。...原创 2019-09-27 14:21:33 · 93 阅读 · 0 评论 -
LeetCode 51.N皇后
LeetCode 51.N皇后问题详细题目题目分析经典暴力枚举问题问题主要在于如何处理避免皇后互相攻击(皇后可以攻击同一行、列以及同一左斜线、右斜线)。通过搜索行来避免行冲突,列用数组标记列号来避免列冲突。左斜线和右斜线比较难表示。从图中可以看出,在同一左斜线上行标减去列标数值相同;在同一右斜线上行标加列标数值相同。因此用两个长度为2n的数组分别标记 r -c + n(加n用来...原创 2019-10-04 11:52:40 · 142 阅读 · 0 评论 -
LeetCode 115.不同的子序列
LeetCode 115.不同的子序列详细题目题目分析题目大致意思就是在主串中找不同子串的数量。思路比较明显是动态规划。令dp(i,j)dp(i, j)dp(i,j)表示S[i:]S[i: ]S[i:]中T[j:]T[j: ]T[j:]出现的次数(S为主串,T为匹配串)。则递推式有:dp(i,j)={dp(i+1,j),if S[i] == T[j]d...原创 2019-10-05 14:08:38 · 155 阅读 · 0 评论 -
LeetCode 159.至多包含两个不同字符的最长子串
LeetCode 159.至多包含两个不同字符的最长子串详细题目题目分析题目理解没难度,比较典型的一道 滑动数组 题目,把握好表示状态就行。状态表示:数组中最多包含两个不同字符的状态,可以用一个列表(code中的c)存下数组中不同的字符,再存下各字符的数量(这里用字典存,code中的m)。用 lll 和 rrr 表示滑动数组 S[l:r)S[l:r)S[l:r) ,然后开始滑动数组。滑...原创 2019-10-07 09:59:03 · 1278 阅读 · 0 评论