摘要: https://oj.leetcode.com/problems/remove-duplicates-from-sorted-list-ii/链表操作的题目。基本思想是维护lp,p,q三个指针,主要麻烦在于处理边界条件。/** * Definition for singly-linked list.... 阅读全文
posted @ 2014-10-10 19:50 zombies 阅读(173) 评论(0) 推荐(0) 编辑
摘要: https://oj.leetcode.com/problems/jump-game-ii/这道题要是直接DP就跪了。将其当成一个图论问题,则每个i节点到其随后的A[i]个节点都有一条边。BFS搜索并标记能够避免计算后面又到达的一些顶点因而是O(n)的算法。BFS还需要针对性的少于优化,首先扩展新结... 阅读全文
posted @ 2014-10-10 01:18 zombies 阅读(280) 评论(0) 推荐(0) 编辑
摘要: https://oj.leetcode.com/problems/recover-binary-search-tree/思路是首先按中序把节点序列打到数组里。然后扫描数组看是哪两个数需要交换。考虑ai和aj是需要交换的两个值,其中i v; void InOrder(TreeNode *root... 阅读全文
posted @ 2014-10-09 21:40 zombies 阅读(140) 评论(0) 推荐(0) 编辑
摘要: https://oj.leetcode.com/problems/add-two-numbers/跟大整数类似的链表操作。注意最后还有进位时需要再加入一个结点。/** * Definition for singly-linked list. * struct ListNode { * int... 阅读全文
posted @ 2014-10-09 16:23 zombies 阅读(151) 评论(0) 推荐(0) 编辑
摘要: https://oj.leetcode.com/problems/clone-graph/克隆一个可能有环的无向图。递归的重构出每个顶点即可。虽然有环,但是每个结点的label提供了该结点的唯一标示。可以使用一个map记录该标识下结点的地址。/** * Definition for undirect... 阅读全文
posted @ 2014-10-09 16:04 zombies 阅读(278) 评论(0) 推荐(0) 编辑
摘要: https://oj.leetcode.com/problems/valid-palindrome/水题。需要注意'a'>'A'。判断范围时弄错了一次。class Solution {public: int n,m; bool Check(char ch){ if (ch>='0' && ch='... 阅读全文
posted @ 2014-10-09 15:18 zombies 阅读(123) 评论(0) 推荐(0) 编辑
摘要: https://oj.leetcode.com/problems/sqrtx/二分搜索。需要注意每次改变边界时l=mi-1,r=mi+1,否则会死循环。另外可能会有整数溢出的情况,使用long long即可解决。class Solution {public: int sqrt(int x) {... 阅读全文
posted @ 2014-10-09 09:58 zombies 阅读(169) 评论(0) 推荐(0) 编辑
摘要: https://oj.leetcode.com/problems/longest-substring-without-repeating-characters/跟“Minimum Window Substring”差不多的一道题。如果往LCS方向思考就走弯路了。正解还是滑动窗口。维护一个到当前位置的... 阅读全文
posted @ 2014-10-09 02:15 zombies 阅读(152) 评论(0) 推荐(0) 编辑
摘要: https://oj.leetcode.com/problems/permutation-sequence/一道简单题目。但是要一次写出bug-free的代码还是挺困难。子问题是固定了前i个数,对第i+1数,要求从他开始往后的第k个数即可。第i+1个数由以下两个因素确定:1)[i+2,n)这些数字共... 阅读全文
posted @ 2014-10-08 23:23 zombies 阅读(146) 评论(0) 推荐(0) 编辑
摘要: https://oj.leetcode.com/problems/rotate-list/这道题目首先要理解什么是"rotate to the right y k",题目的那个例子看起来像是另后k个结点连接到链表的头上。当k>n时,此题被翻译为按照从右数第k个元素进行旋转,这个就很难理解了。这种情况... 阅读全文
posted @ 2014-10-08 21:15 zombies 阅读(172) 评论(0) 推荐(0) 编辑