在解题过程中,我们有时需要维护一个数组的前缀和S[i]=A[1]+A[2]+...+A[i]。但是不难发现,如果我们修改了任意一个A[i],那么S[i]、S[i+1]...S[n]都会发生变化。可以说,每次修改A[i]后,调整前缀和S在最坏情况下会需要O(n)的时间。当n非常大时,程序会运行得非常缓慢。因此,这里我们引入“树状数组”,它的修改与求和都是O(logn)的,效率非常高。...
分类:
其他好文 时间:
2014-08-05 14:15:00
阅读次数:
193
数据结构精要------直接选择和堆排序算法...
分类:
其他好文 时间:
2014-08-04 21:35:38
阅读次数:
245
最短路径---Dijkstra迪杰特斯拉算法---《数据结构》严蔚敏...
分类:
其他好文 时间:
2014-08-04 17:58:27
阅读次数:
328
Given a linked list and a value x, partition it such that all nodes less than x come before nodes greater than or equal to x.
You should preserve the original relative order of the nodes in each of...
分类:
其他好文 时间:
2014-08-03 23:28:56
阅读次数:
261
算法+数据结构=程序设计,我上大学的时候流行的说法,后来有一位从企业转行做老师的愤青老师很激动的告诉我们,算法+数据结构+设计模式=程序设计,他大声喊道,设计模式才是王道,就好像一个智者在告诉我们这些土逼什么是真理。也是在那个年代,我见到了一部iphone 3S,一部区别于其他手机的高级货,那时候我甚至以为那不是个手机,可能是个PSP,但是有打电话的功能。后来我听说了一个叫Android的东西,据...
分类:
其他好文 时间:
2014-08-01 19:59:22
阅读次数:
202
数据结构中讲到关于字符串匹配算法时,提到朴素匹配算法,和KMP匹配算法。朴素匹配算法就是简单的一个一个匹配字符,如果遇到不匹配字符那么就在源字符串中迭代下一个位置一个一个的匹配,这样计算起来会有很多多余的不符合的匹配做了冗余的比较。假设源字符串长n,字串长m 该算法最差时间复杂度为 m*(n-m+1...
分类:
其他好文 时间:
2014-07-30 23:24:05
阅读次数:
351
C++ STL====Standard Template Library C++ 标准模板库,即 C++泛型库它在std命名空间中定义了常用的数据结构和算法C++ STL提供了三种类型的组件-----容器 迭代器 算法容器----顺序容器
分类:
编程语言 时间:
2014-07-30 20:18:34
阅读次数:
209
private void compare() {
//定义个无序字符串
String str = "sdifsdafsdabfwqicweedio";
//置于hashset去重
HashSet set = new HashSet();
for (int i = 0; i < str.length(); i++) {
...
分类:
其他好文 时间:
2014-07-29 12:51:36
阅读次数:
182
没想到这么快就到NOI了……好多算法还没学,好多算法不熟悉,数据结构不会……匆忙…………我很想拿个好成绩,不过实力不济……算了,不想那些了像郭家宝说的那样,良好的心态就是心无杂念,无需瞻前顾后,也就是忘掉以前的失败和成就,不去想赛后的一切可能,专心投入到做题当中。这两点是软实力。只有做到软硬兼施、刚...
分类:
其他好文 时间:
2014-07-25 02:23:54
阅读次数:
234