2014-04-28
22:49题目:给定一个整数数组。如果你将其中一个子数组排序,那么整个数组都变得有序。找出所有这样子数组里最短的一个。解法:线性时间,常数空间内可以解决,思想类似于动态规划。通过正反扫描两次,可以得出这个区间的两端。只要存在i
a[j],那么这个区间[i, j]就必须被排序,....
分类:
其他好文 时间:
2014-04-29 16:11:53
阅读次数:
408
LeetCode:Combinations这篇博客中给出了不包含重复元素求组合的5种解法。我们在这些解法的基础上修改以支持包含重复元素的情况。对于这种情况,首先肯定要对数组排序,以下不再强调修改算法1:按照求包含重复元素集合子集的方法LeetCode:Subsets
II算法1的解释,我们知道:若当...
分类:
其他好文 时间:
2014-04-28 14:00:43
阅读次数:
717
这道题中要求时间复杂度为O(n),首先我们可以知道的是,如果先对数组排序再计算其最长连续序列的时间复杂度是O(nlogn),所以不能用排序的方法。我一开始想是不是应该用动态规划来解,发现其并不符合动态规划的特征。最后采用类似于LRU_Cache中出现的数据结构(集快速查询和顺序遍历两大优点于一身)来...
分类:
其他好文 时间:
2014-04-28 10:21:19
阅读次数:
1003
一、普通数组排序
js中用方法sort()为数组排序。sort()方法有一个可选参数,是用来确定元素顺序的函数。如果这个参数被省略,那么数组中的元素将按照ASCII字符顺序进行排序。如:var
arr = ["a", "b", "A", "B"];arr.sort();console.log(...
分类:
Web程序 时间:
2014-04-27 21:25:39
阅读次数:
1055