这道题中要求时间复杂度为O(n),首先我们可以知道的是,如果先对数组排序再计算其最长连续序列的时间复杂度是O(nlogn),所以不能用排序的方法。我一开始想是不是应该用动态规划来解,发现其并不符合动态规划的特征。最后采用类似于LRU_Cache中出现的数据结构(集快速查询和顺序遍历两大优点于一身)来...
分类:
其他好文 时间:
2014-04-28 10:21:19
阅读次数:
1003
01背包的变形。先算出硬币面值的总和,然后此题变成求背包容量为V=sum/2时,能装的最多的硬币,然后将剩余的面值和它相减取一个绝对值就是最小的差值。代码:#include
#include #include #include #include using namespace std;#define...
分类:
其他好文 时间:
2014-04-28 09:53:54
阅读次数:
645