2013年5月22日
摘要: 先快速排序#include <stdio.h>#define count(a) sizeof(a)/sizeof(int)int main(){ int s[] = {-1,0,-2,1,2,2,3,4,7,9,11,13}; int sum = 7; int i = 0; int j = count(s)-1; int g = 0; while(i!=j) { if(s[i]+s[j] > sum) j--; else if(s[i]+s[j] < sum) i++; else { ... 阅读全文
posted @ 2013-05-22 22:35 裴银祥的博客园 阅读(577) 评论(0) 推荐(0) 编辑
摘要: 链表与数组的区别A 从逻辑结构来看A-1. 数组必须事先定义固定的长度(元素个数),不能适应数据动态地增减的情况。当 数据增加时,可能超出原先定义的元素个数;当数据减少时,造成内存浪费。A-2. 链表动态地进行存储分配,可以适应数据动态地增减的情况,且可以方便地插入、 删除数据项。(数组中插入、删除数据项时,需要移动其它数据项)B 从内存存储来看B-1. (静态)数组从栈中分配空间, 对于程序员方便快速,但是自由度小B-2. 链表从堆中分配空间, 自由度大但是申请管理比较麻烦.堆和栈的区别solost 于 2004年 10月09日 发表一、预备知识—程序的内存分配一个由c/C++编译的程序占用 阅读全文
posted @ 2013-05-22 21:43 裴银祥的博客园 阅读(702) 评论(0) 推荐(0) 编辑
摘要: 题目:有一千万条短信,有重复,以文本形式保存,一行一条,找出重复最少的前10条思路:通过哈希表去重并统计出重复次数后,通过堆调整找出重复次数最少的前10条参考文章:http://gengning938.blog.163.com/blog/static/128225381201161994028740/,代码有改动。关于从n(n很大)个数字中查找前k个最小的数的方法,用堆调整的方法,具体参见:http://www.oschina.net/code/snippet_180974_6371和我之前的一篇博客:【数据结构】堆排序下面给出经过改动的代码,编译是通过的。如果任何地方有什么纰漏之处,敬请指正 阅读全文
posted @ 2013-05-22 20:57 裴银祥的博客园 阅读(1165) 评论(0) 推荐(0) 编辑