- 博客(5)
- 收藏
- 关注
原创 Leetcode 4. Median of Two Sorted Arrays
这道题应该怎么做呢。。。题目给出了两个已经排序的序列,需要找出两个序列所有数的中位数。最直观的做法是现将所有元素进行排序,然后直接找到中位数。这样做的话复杂度为O(m+n),但是本题目要求时间复杂度为log(m+n)。 其实,前面的排序信息是没有用的,因为我们只需要找到中位数,那么该如何简化呢。。。 这道题的时间复杂度要求给了我们提示,因为涉及到log(n)这种复杂度,每次至少要将问题的规模按一
2016-02-28 21:38:42
188
原创 Leetcode题目分析 3. Longest Substring Without Repeating Characters
这道题一眼看上去,就是一个可分序列中找最大最小的问题,对于这种类型的题目,我一般都会找前n个的最大或者最小,然后看看加上第n+1个元素,对原来的解答有哪些影响。这样做的一个好处是,可以比较清楚的知道自己需要维护哪些信息,写起来比较简单,但是效率却不一定是最高的。 对于这道题,用上述的方法,需要维护的信息就是到第n个元素,无重复序列的最大长度和包含第n个元素向前的无重复元素集合。public cla
2016-02-28 20:32:07
242
原创 Leetcode题目分析 2. Add Two Numbers
这道题感觉是对链表基本用法的考察,有些细节需要注意,但是题目本身并不复杂!/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ public class
2016-02-23 21:10:00
209
原创 Leetcode题目分析 1.Two Sum
这道题可以利用HashMap轻松解决。把当前的数字作为Key,当前数字在数组中的下标作为Value放入HashMap中,每次判断target-nums[i]是否存在即可。 只需要遍历一遍数组,所以算法复杂度为o(n)。 public class Solution { public int[] twoSum(int[] nums, int target) { Map<Integ
2016-02-23 20:51:54
187
原创 First Missing Positive - Java Leetcode
FirstMissingPositive java leetcode 算法描述及代码
2015-06-19 00:49:58
433
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人