Reverse Words in a
String题目链接:http://oj.leetcode.com/problems/reverse-words-in-a-string/ Given an
input string, reverse the string word by word. F...
分类:
其他好文 时间:
2014-07-22 23:13:32
阅读次数:
309
原题地址:http://oj.leetcode.com/problems/insertion-sort-list/题意:对链表进行插入排序。解题思路:首先来对插入排序有一个直观的认识,来自维基百科。
代码循环部分图示:代码:class Solution:# @p...
分类:
编程语言 时间:
2014-07-22 23:11:32
阅读次数:
411
我觉得这道题比较难,主要是因为对于我来说:1.
我没有把这个问题联想到树的宽度遍历(即便没有考虑树的宽度遍历,也是可以做的,但是我一开始实现的代码却是深度遍历,后来发现树的BFS一般使用queue实现的,貌似没有递归的方法??)2.
即使在意识到用BFS,却还有一个陷阱:我是对字典进行了BFS,这个...
分类:
其他好文 时间:
2014-07-22 23:08:55
阅读次数:
305
原题地址:http://oj.leetcode.com/problems/reorder-list/题意:Given
a singly linked listL:L0→L1→…→Ln-1→Ln,reorder it to:L0→Ln→L1→Ln-1→L2→Ln-2→…You
must do this...
分类:
编程语言 时间:
2014-05-01 15:37:03
阅读次数:
441
我发现在leetcode上做题,当我出现TLE问题时,往往是代码有漏洞,有些条件没有考虑到,这道题又验证了我这一想法。这道题是在上一道的基础上进一步把所有可能得转换序列给出。同样的先是BFS,与此同时需要一个hashMap记录下每个节点,和他所有父节点的对应关系,然后通过DFS,回溯所有可能的路径。...
分类:
其他好文 时间:
2014-05-01 15:08:04
阅读次数:
415
这道题挺简单的,但是需要细心。最好的方法是先对string做预处理,然后再判断是否是回文。下面是AC代码:
1 /** 2 * Given a string, determine if it is a palindrome, considering only
alphanumeric ch...
分类:
其他好文 时间:
2014-05-01 01:45:34
阅读次数:
375
原题地址:http://oj.leetcode.com/problems/sort-list/题意:链表的排序。要求:时间复杂度O(nlogn),空间复杂度O(1)。解题思路:由于题目对时间复杂度和空间复杂度要求比较高,所以查看了各种解法,最好的解法就是归并排序,由于链表在归并操作时并不需要像数组的...
分类:
编程语言 时间:
2014-04-30 15:09:41
阅读次数:
428
原题地址:http://oj.leetcode.com/problems/4sum/题意:从数组中找到4个数,使它们的和为target。要求去重,可能有多组解,需要都找出来。解题思路:一开始想要像3Sum那样去解题,时间复杂度为O(N^3),可无论怎么写都是Time
Limited Exceeded...
分类:
编程语言 时间:
2014-04-30 13:28:46
阅读次数:
445
原题地址:http://oj.leetcode.com/problems/3sum-closest/题意:数组中每三个元素进行求和,找出所有和中大小最接近target的和,并返回这个和与target之间的差值。解题思路:使用一个变量mindiff来监测和与target之间的差值,如果差值为0,直接返...
分类:
编程语言 时间:
2014-04-29 16:37:46
阅读次数:
432
原题链接: http://oj.leetcode.com/problems/reverse-linked-list-ii/
这道题是比较常见的链表反转操作,不过不是反转整个链表,而是从m到n的一部分。分为两个步骤,第一步是找到m结点所在位置,第二步就是进行反转直到n结点。反转的方法就是每读到一个结点,把它插入到m结点前面位置,然后m结点接到读到结点的下一个。总共只需要一次扫描,所以时间是O(n...
分类:
其他好文 时间:
2014-04-28 10:38:42
阅读次数:
240