- 博客(4)
- 资源 (2)
- 收藏
- 关注
原创 位图应用
一、背景介绍本文主要是对编程珠玑中第一章的学习总结。问题背景大致如下:一个最多包含n个正整数的文件,每个数都小于n,其中n=10^7,同时所有的正整数不重复出现。现在需要按升序将所有的整数输出,约束条件是最多有1MB的内存空间可用,但磁盘空间充足。 如果按通常的处理的方法,使用int类型(32位)存储整数,这样1MB的空间可存储10^6B/4B,即约250000个整数,虽然不能同时对所有的数据进行排
2015-08-06 22:29:49 431
原创 分析一个文本文件(英文)中各个词出现的频率,并使用vs2012的performance analysis tool分析
上一篇博客还是很久以前的了,虽然知道博客也是很好的学习方式,比较懒~这次是老师的要求的作业,恩,废话少说了。 一、程序说明及结果 采用的是c++编写的代码,对于读取的单词采用的双向链表的结构存储(方便对节点排序),由于要输出频率最高的十个单词,就意味着要对链表排序。在实现上,我是在每读入一个单词时并对链表的序列进行更新,将复杂度控制在了O(n)。 程序结果(其中文本文件大小为259
2014-03-13 20:57:36 857
原创 合并排序的三种不同写法,包括递归和非递归
在学算法设计课中,学到合并排序时,并把合并排序的三种不同的写法都写了一遍(两种递归的形式其实大同小异,只是在一种写法中整个算法只分配了一个临时数组而一种写法中每次递归时都会分配临时空间用于暂存数据)。 一、递归形式的一种写法(每次递归操作中都分配新的空间) void merge1(item * A, item * B, item * C, int Lb, int Lc){ int i =
2013-10-09 13:24:34 654
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人