读书笔记
nianiajr
http://www.liangjiarui.com/
展开
-
《编程珠玑》--一段设计取巧的随机数选取代码
代码如下:#include#include#include#includeusing namespace std;int main(){ int n,m,remaining; srand(time(NULL)); cout<<"请输入选择的范围以及需要从中挑选多少个数:"<<endl; cin>>n>>m; remaining = n; for原创 2014-06-28 11:19:01 · 721 阅读 · 0 评论 -
《编程珠玑》---信函格式发生器
这词到是有点新鲜,以前都没听过,百度了以后才发现原来是这样原创 2014-06-22 14:24:20 · 1254 阅读 · 0 评论 -
快速产生后缀字符串的代码
在编程珠玑上看见的,感觉比较巧妙,写下来分享一下。原创 2014-07-03 15:03:32 · 622 阅读 · 0 评论 -
《编程珠玑》---找到缺失的整数(位图+二分)
问题描述:从40亿个随机排列的32位整数中找到不存在文件中的整数;根据题目的解析,这里我们缩小范围来举例,从8个随机排列的3位整数中找到不存在文件中的整数,假如我们放进的是(000, 001, 010, 011, 100, 111)缺少(101,110);算法第一趟:(把起始位为0的整数读入到一个文件,把起始位为1的整数读入到另一个文件)。文件1: 000, 001, 010, 011原创 2014-05-28 23:16:31 · 1064 阅读 · 1 评论 -
《编程珠玑》之变位词查找
一般方法就是xian原创 2014-05-29 01:55:17 · 923 阅读 · 0 评论 -
读《编程珠玑》之初始化牺牲空间换时间
遗留昨天的第一章的习题9,关于用牺牲空间的办法来换取时间的初始化办法;作者原创 2014-05-27 01:11:48 · 1105 阅读 · 0 评论 -
<<编程珠玑>>笔记之使用位逻辑运算来实现位向量
位向量:用位来存储一个数,例如N=10000000个数,每一位代表一个数定义一个int类型的数组int a[N],如果a[9]=1,则代表文件中存在一个值为9,不过由于这里我们定义的是int,一个int是4字节,也就是32位,有效利用这个32位的可以缩减实际所开数组大小的'N'值,这里实际上也就只用开到int [n>>5]; 这样每一个数组的值,例如:a[0]代表了0-31; a[1]代表原创 2014-05-26 01:46:42 · 689 阅读 · 0 评论 -
《编程珠玑》之随机取k个数
4.取0-n范围的k个随机数,保证不能重复(例如n=100, k=9)int randint(int l,int u){ int temp; srand(time(NULL)); temp = floor(1+(1.0*rand()/RAND_MAX)*(u-l+1)); return temp;}int main(){ int s原创 2014-05-26 01:48:25 · 775 阅读 · 0 评论 -
《编程珠玑》--关于编程过程中几个重要阶段的摘录
要养成良好的编程习惯,勤于思考,yiban原创 2014-06-28 12:03:23 · 663 阅读 · 0 评论 -
《编程珠玑》---编写正确的二分搜索程序
#includeusing namespace std;int s[12] = { 1,2,2,3,3,4,4,4,5,5,11,12 };int bin_search(const int x, int l, int r){ int mid; while(l mid = l+(r-l)/2; if(s[mi原创 2014-06-22 14:21:30 · 759 阅读 · 0 评论