LeetCode
文章平均质量分 54
MyCodecOdecoDecodE
这个作者很懒,什么都没留下…
展开
-
LeetCode题目:23. Merge k Sorted Lists
LeetCode题目:23. Merge k Sorted Lists 原题链接:https://leetcode.com/problems/merge-k-sorted-lists/description/解题思路:将k个链表合并,看成依次将其中两个链表合并,即可简化题目。核心思想:不停取两个链表合并,再放回去,直到剩下唯一一个链表。代码细节:在链表合并的时候,新建一个结点当做头结点前的一原创 2017-09-25 22:58:44 · 228 阅读 · 0 评论 -
LeetCode题目: 25. Reverse Nodes in k-Group
LeetCode题目: 25. Reverse Nodes in k-Group 原题链接:https://leetcode.com/problems/reverse-nodes-in-k-group/description/解题思路:(虽说题目限制常数空间,但是用栈保存节点也是可行的一种方法,可以过)将链表的前k位翻转,然后递归链表剩余的部分,最后返回头结点。核心思想:使用三个遍历节点对数原创 2017-09-28 22:52:15 · 401 阅读 · 0 评论 -
LeetCode题目:37. Sudoku Solver
LeetCode题目:37. Sudoku Solver 原题链接:https://leetcode.com/problems/sudoku-solver/description/解题思路:(现实生活中都不会怎么解数独,怎么写代码= =,于是用比较暴力的方法实现了。)解数独分为两部分:1.利用唯一余数法解出答案同列,同行,同宫出现的数字排除后,该格只能填一个数,即为答案。2.递归猜测答案如果已原创 2017-10-22 22:57:38 · 346 阅读 · 0 评论 -
LeetCode题目:32. Longest Valid Parentheses
LeetCode题目:32. Longest Valid Parentheses 原题链接:https://leetcode.com/problems/longest-valid-parentheses/description/解题思路:运用栈进行()的匹配。每个’)’压入栈的时候,判断栈顶是否有’(‘,存在则抵消。如此反复,最后得到的栈即是无法匹配的字符。如果同时记录这些字符在s中下标,则原创 2017-10-15 22:59:00 · 240 阅读 · 0 评论 -
LeetCode题目:42. Trapping Rain Water
LeetCode题目:42. Trapping Rain Water 原题链接:https://leetcode.com/problems/trapping-rain-water/description/解题思路:核心思想:并不用直接处理水的数量,而是通过计算其他的值,间接计算水的数量。通过计算总数量,空气的数量,条的高度总和,可得 水的数量 = 总数量 - 空气的数量 - 条的高度总和原创 2017-11-12 14:26:42 · 297 阅读 · 0 评论 -
LeetCode题目:41. First Missing Positive
LeetCode题目:41. First Missing Positive 原题链接:https://leetcode.com/problems/first-missing-positive/description/解题思路:(此题数据限制的不是很严格,用sort快排对数组排序,然后遍历数组,也可以过。)实际上,题目所说的O(1)并不包含输入的数组大小,因此可以改变输入的数组来实现O(n)的复原创 2017-11-05 22:23:38 · 243 阅读 · 0 评论 -
LeetCode题目:44. Wildcard Matching
LeetCode题目:44. Wildcard Matching 原题链接:https://leetcode.com/problems/wildcard-matching/description/解题思路:核心思想:由题可知,’*’意思是匹配认可,因此,多个连续的’*’组成的字符串和单个’*’的意义一样,因此,可以把输入子串s根据’*’分割,变成字符串数组ss.字符串数组分为三部分:首位字符原创 2017-11-21 23:15:12 · 239 阅读 · 0 评论 -
84. Largest Rectangle in Histogram
LeetCode题目:84. Largest Rectangle in Histogram 原题链接:https://leetcode.com/problems/largest-rectangle-in-histogram/description/解题思路:核心思想:维护一个栈将整个直方图数组从左到右遍历,和栈顶比较,如果高于栈顶,直接加入栈中,如果小于栈顶,栈顶可以拿出来,计算矩形的面积原创 2018-01-12 00:06:17 · 254 阅读 · 0 评论 -
85. Maximal Rectangle
LeetCode题目:85. Maximal Rectangle 原题链接:https://leetcode.com/problems/maximal-rectangle/description/解题思路:核心思想:84题的延伸可以将每一行,看成一个直方图,值为0,代表直方图为0,值为1,代表直方图为n(n为该点向上数连续为1的个数)。举个例子,例图中转换的直方图为:第一行:[1, 0,原创 2018-01-12 00:06:50 · 219 阅读 · 0 评论 -
LeetCode题目: 10. Regular Expression Matching
LeetCode题目: 10. Regular Expression Matching 原题链接:https://leetcode.com/problems/regular-expression-matching/description/解题思路:此题输入为两个字符串s和p,题目要求是完全匹配,即存在一种可能,使s==p。‘.’意为随便代表一个字符。‘*’意为可匹配一个或多个前继字符。(PS:原创 2017-09-19 09:07:19 · 506 阅读 · 0 评论 -
LeetCode题目:9.Palindrome Number
LeetCode题目:9.Palindrome Number 原题链接:https://leetcode.com/problems/palindrome-number/description/解题思路:(题目说的无法用额外空间,但是实际上可以使用,完全是不明所以)依次将数字的第一位和最后一位单独取出来作比较,如果最后只剩一位或者一位不剩,则回文。核心思想:1.先计算该数字有多少位数2.每次比较原创 2017-09-19 09:06:46 · 464 阅读 · 0 评论 -
LeetCode题目:4.Median of Two Sorted Arrays
LeetCode题目:4.Median of Two Sorted Arrays 原题链接:https://leetcode.com/problems/median-of-two-sorted-arrays/description/解题思路:由于时间复杂度限制在了 O(log (m+n)),因此不能遍历整个数组。由于是log,因此比较容易想到的是关于二分的算法。在一个排序好的数组中,查找一个特原创 2017-09-17 21:49:56 · 394 阅读 · 0 评论 -
LeetCode题目: 5.Longest Palindromic Substring
LeetCode题目: 5.Longest Palindromic Substring 原题链接:https://leetcode.com/problems/longest-palindromic-substring/description/解题思路:回文串可分为两种,第一种是中间有一个单独字符,两边对称,例如:“abcba”。第二种是中间没有单独字符,沿中间对称,例如:“abba”。因此,可原创 2017-09-17 22:44:06 · 260 阅读 · 0 评论 -
LeetCode题目:6.ZigZag Conversion
LeetCode题目:6.ZigZag Conversion 原题链接:https://leetcode.com/problems/zigzag-conversion/description/解题思路:对指定行row,找出逻辑,得到公式,然后进行计算即可。核心思想:对第一行和第row行,一个之字有两个字符,相邻字符的距离为2(row-1)。对第i行,一个之字有三个字符,某字符到下两个字符的距离原创 2017-09-17 22:44:34 · 309 阅读 · 0 评论 -
LeetCode题目:1. Two Sum
LeetCode题目:1. Two Sum 原题链接:https://leetcode.com/problems/two-sum/description/原创 2017-09-10 18:13:07 · 271 阅读 · 0 评论 -
LeetCode题目:2. Add Two Numbers
LeetCode题目:2. Add Two Numbers 原题链接:https://leetcode.com/problems/add-two-numbers/description/解题思路:核心思想:将链表看成十进制数,同时递归两个链表,对相同的位置的数进行相加,然后得到进位,进位加到下一位数。代码细节:1.为了不改变输入链表,新建一个链表作为输出,并新建一个指针用于新建链表的递归。2.原创 2017-09-10 20:05:52 · 301 阅读 · 0 评论 -
LeetCode题目:3. Longest Substring Without Repeating Characters
LeetCode题目:3. Longest Substring Without Repeating Characters 原题链接:https://leetcode.com/problems/longest-substring-without-repeating-characters/description/原创 2017-09-10 20:50:06 · 294 阅读 · 0 评论 -
LeetCode题目: 7.Reverse Integer
LeetCode题目: 7.Reverse Integer 原题链接:https://leetcode.com/problems/reverse-integer/description/解题思路:由于int类型不容易反转,将int转换成string,然后将string反转,最后转回int。核心思想:int->string->(反转)string->(反转)int代码细节:1.由于负号不需要反转原创 2017-09-19 09:05:26 · 525 阅读 · 0 评论 -
LeetCode题目: 8. String to Integer (atoi)
LeetCode题目: 8. String to Integer (atoi) 原题链接:https://leetcode.com/problems/string-to-integer-atoi/description/解题思路:(以下来自百度)原型: int atoi(const char *nptr); 函数说明: 参数nptr字符串,如果第一个非空格字符不存在或者不是数字也不是正负号则原创 2017-09-19 09:05:54 · 433 阅读 · 0 评论 -
证精确的4SAT是NP-完全问题
证精确的4SAT是NP-完全问题 此题源于《算法概论》(清华大学出版社)课后习题8.8题目解释精确4SAT(EXACT 4SAT)问题是这样的:输入为一组字句,每个字句都是恰好4个文字的析取,且每个变量最多在每个字句出现一次。目标是求它的满足赋值——如果该赋值存在。总结下来,EXACT 4SAT问题是SAT的一个变种,即有约束条件的SAT。但是,我们仍然可以进行SAT -> EXACT 4SA原创 2018-01-04 18:01:42 · 663 阅读 · 0 评论