E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
编程珠玑习题解答
Reservoir Sampling - 蓄水池抽样
问题起源于
编程珠玑
Column12中的题目10,其描述如下:Howcouldyouselectoneofnobjectsatrandom,whereyouseetheobjectssequentiallybutyoudonotknowthevalueofnbeforehand
yu422560654
·
2011-10-17 15:00
编程
c
File
Random
input
扩展
蓄水池抽样
问题起源于
编程珠玑
Column 12中的题目10,其描述如下: http://www.cnblogs.com/HappyAngel/
hcegg
·
2011-10-16 19:00
计数排序算法
其实这个问题是《
编程珠玑
》上介绍的第一个有关于美国电话排序问题的简化,书上介绍运用位向量来解决,并将这种方法和其他的排序算法,如归并排序、快速排序等,做了比较。
zhangkaihang
·
2011-10-10 22:00
ios
编程
算法
电话
output
一个模式匹配算法的优化
看《
编程珠玑
》第8章,里面一章介绍了针对一个模式匹配问题算法的优化策略,由于优化后算法与原始算法效率上的大幅度增强,我被震惊了。问题:在一个向量中寻找最大子向量。书上有伪代码,我还是实现了一下。
doctorsc
·
2011-10-10 15:00
编程
UI
优化
算法
存储
编程珠玑
第14章
这里把所有关于堆的操作写出来。当做标程吧。#include #include #definems1025 typedefstruct_heap { inta[ms]; intsize; }heap; heaph; staticvoid_shift(heap*h,inti) { intj,t,*a=h?h->a:0,n=h?h->size:0; if(!h)return; t=a[i]; whil
ju136
·
2011-10-04 13:00
编程珠玑
第13章
正文为了解决在12章中的随机数问题,本章中的目的是对查看是否在数组中的情况进行处理。那么这里采用了以下几种方法:1、采用C++的set2、采用数组3、采用链表,顺序搜索,插入时不用移动。结果是数组的比链表的要快:1、链表需要读入的内存数比数组大2、数组访问有较好的内存相联性,而链表则不能保证。接下来采用了二叉树,箱,位向量数据结构习题5、实际上就是先分配一大块内存给其使用、不要用一块申请一块。6、
ju136
·
2011-10-03 20:00
数据结构
编程
c
编程珠玑
第12章
正文如何生成0~n-1内的m个随机整数1、方法一比如要从5个数里选出2个数,第一个数的概率是2/5,第二个数的概率是1/4,然后是0/3那么现在已经很清楚了。可以写代码如下:for(inti=0;i
ju136
·
2011-10-03 18:00
编程珠玑
第8章:具有n个浮点数字的向量x,在任何相邻子向量中找出最大和。
http://hi.baidu.com/banyantree/blog/item/7d78b1ef3d2a1e11fdfa3c93.html#include"stdafx.h" #include usingnamespacestd; intFindMaxSumSubSequence(intarr[],intlen,int&begin,int&end) { intres=0;/
wangyangkobe
·
2011-10-03 18:00
编程珠玑
第11章
正文插入排序与快速排序习题1、最大值,最小值不用排序O(n)时间可以找到中值也可以不排序O(n)可以找到均值O(n),不过对于浮点数来说,一般求均值,先排一下序,精度会提高。众数一般用散列效果很好。2、3、4、修改程序,最坏情况下使用对数空间,看一下补充材料。计算机算法艺术第三卷。9、找第K小数也只需要O(n)的时间10、11、12、13、14、可以递归调用时使用qsort(x+b,n);就是移动
ju136
·
2011-10-03 12:00
编程
算法
编程珠玑
第10章
正文如何处理压缩数据,最好是找到数据背后的公式。如何存储矩阵。习题1、把部分数据放到磁盘中,那么相应的代码里面的数据会减少。2、三元组矩阵应该也可以算一种处理方式。3、略去4、略去后面都略去,唉都在讲数据压缩~~
ju136
·
2011-10-03 12:00
编程珠玑
第9章
代码调优:全文解读1、求模: if(num>n)num-=n; 不要使用num%=n;(当num只是n的1倍多一点的时候)。2、注意在访问内存的时候,要注意内存的连续性,如果访问的内存不是连续的,那么程序的运行速度也会受到极大的影响。3、如果max宏与一般的语句是等价的,那么可以用,如果是用在递归中,那么一定要小心。 比如习题的第四题#definemax(a,b)((a)>(b)?
ju136
·
2011-10-02 21:00
编程
float
编程珠玑
第8章
正文中所提及的算法可以在ecnuoj1109上面找到。template TmaxSubSum(T*a,intn) { Ts=0,t=0,mx=a[0]; for(inti=0;ia[i]?mx:a[i]; t=ts?t:s; } if(mx>0)returns; returnmx; }习题1、2、3、略去4、需要测试?这个比较难算5、6、(6题看2.2的答案有点意思。)7、8、略去9题如上面所写的
ju136
·
2011-10-02 19:00
编程
c
算法
测试
IM
浅谈bitmap算法
浅谈bitmap算法 久闻《
编程珠玑
》一书中提出的bitmap算法之大名,只是没有深入的去研究,今天下午有兴致研究一番,才知道其中的玄机奥秘,不亚于KMP算法之巧妙,下面就由浅入深的谈谈bitmap
weihe6666
·
2011-10-02 17:00
bitmap
编程珠玑
第2章:排序、二分查找、签名、向量平移
给定一个最多包含40亿个随机排列的32位整数的顺序文件,找出一个不在文件中一32位整数。1、在文件中至少存在这样一个数?2、如果有足够的内存,如何处理?3、如果内存不足,仅可以用文件来进行处理,如何处理? 答案:1、32位整数,包括-2146473648~~2146473647,约42亿个整数,而文件中只有40亿个,必然有整数少了。2、如果采用位数思想来存放,则32位整数最多需要占用43亿个位
wangyangkobe
·
2011-10-02 17:00
编程
编程珠玑
第六章
如果要提高软件的性能,需要从下面几个方面入手:1、算法与数据结构2、算法调优3、数据结构重组4、与系统无关的代码的调优(float取代double)。5、与系统相关的调优,把经常使用的函数进行加速,比如使用汇编6、硬件上使用浮点运算器。可以留个思考题:500位的质因数分解?应该是需要用到C++的大数模板来处理了。
ju136
·
2011-10-02 13:00
编程珠玑
第五章
直接来习题吧1、第一题可以看一下林锐的高质量C/C++编程2、3、4、5、第五题很明显不应该每次都用 for(i=0;i=e)return-1; while(begin>1); assert(*beginv)end=mid; elseif(*mid=e)return-1; if(!record||record!=a) { while(i>1); assert(*beginv)e
ju136
·
2011-10-02 12:00
编程珠玑
第四章
正文里面涉及到程序设计方法学的内容。不再细述1、加及条件是0>1); if(*mid>=v)e=mid; elseif(*mid #include intcmp(constvoid*a,constvoid*b) { return(*(int*)a)-(*(int*)b); } intbs(int*a,intbegin,intend,intv) { int*b=a+
ju136
·
2011-10-02 00:00
编程
测试
null
Random
编程珠玑
第三章
习题1、首先是按照税率找到刚好税率最好的情况。这里用二分。inta[100]={2200,2700,....}doublec[100]={0,0.14,0.15,0.16,...}首先用二分找最刚好比其小的那个数intbs(int*a,intb,inte,intv) { int*begin=a+b,int*end=a+e,*mid; if(!a||b>=e)return-1; while(begi
ju136
·
2011-10-01 21:00
编程
Date
String
iterator
domain
output
编程珠玑
第二章
A题给定一个最多包含40亿个随机排列的32位整数的顺序文件,找出一个不在文件中一32位整数。1、在文件中至少存在这样一个数?2、如果有足够的内存,如何处理?3、如果内存不足,仅可以用文件来进行处理,如何处理?答案:1、32位整数,包括-2146473648~~2146473647,约42亿个整数,而文件中只有40亿个,必然有整数少了。2、如果采用位数思想来存放,则32位整数最多需要占用43亿个位。
ju136
·
2011-10-01 15:00
编程
c
算法
String
iterator
编程珠玑
第一章
原文中的问题:如何在1MB的空间里面对一千万个整数进行排序?并且每个数都小于1千万。实际上这个需要1.25MB的内存空间。1MB总共有838,8608。所以估计也可以在1MB左右的空间里面进行排序了。#include #include #defineBITSPERWORD32 #defineSHIFT5 #defineMASK0x1F #defineN10000000 inta[1+N/BITSP
ju136
·
2011-09-29 00:00
编程
c
测试
存储
fun
电话
操作系统
习题解答
每次笔试,我都在操作系统的计算题中大费脑筋,以前学操作系统的时候,确实没有怎么做题。其实,各大公司出的题目都是作业题目,这一点我很不占优势。1.页式存储管理地址转换问题http://www.isenyo.com/?p=9若在一分页存储管理系统中,某作业的页表如下所示。已知页面大小为1024字节,试将逻辑地址1011,2148,4000,5012转化为相应的物理地址。页号块号0 21
randyjiawenjie
·
2011-09-28 15:00
腾讯
存储
作业
编程珠玑
番外篇 -K. 高级语言是怎么来的-7
LISP语言前传Lisp的主要设计者JohnMcCarthy曾经就Lisp的发展史,专门写过一篇HistoryofLisp的文章。这里介绍的历史,基本史实部分参照了JohnMcCarthy的这篇文章,以及同时期MIT的关于Lisp的技术报告。Lisp的历史要从IBM的神奇机器704说起。此时是1954年,尽管距离1946年第一台计算机ENIAC的出现已经八年了,商用计算机市场还仅仅起步。很早就进入
Eric kylexlau
·
2011-09-28 05:00
CompSci
pearl
编程珠玑
番外篇 -K. 高级语言是怎么来的-7
LISP语言前传Lisp的主要设计者JohnMcCarthy曾经就Lisp的发展史,专门写过一篇HistoryofLisp的文章。这里介绍的历史,基本史实部分参照了JohnMcCarthy的这篇文章,以及同时期MIT的关于Lisp的技术报告。Lisp的历史要从IBM的神奇机器704说起。此时是1954年,尽管距离1946年第一台计算机ENIAC的出现已经八年了,商用计算机市场还仅仅起步。很早就进入
Eric kylexlau
·
2011-09-27 21:00
CompSci
Pearl
Reservoir Sampling 蓄水池抽样 海量数据不知道总数只能遍历一次随机抽样问题
问题起源于
编程珠玑
Column12中的题目10,其描述如下:Howcouldyouselectoneofnobjectsatrandom,whereyouseetheobjectssequentiallybutyoudonotknowthevalueofnbeforehand
iamfranter
·
2011-09-26 23:00
编程
算法
Random
input
扩展
任务
《
编程珠玑
》第一章笔记
文章从一个实际的问题开始:一个电话系统,7位数的电话号码,用1MB的内存空间将这些电话号码排序。分析:如果将这些电话号码看成int类型的整数,将其读入内存中进行排序,int类型4个字节,最多有10000000个电话号码,则需要40MB的内存空间,远远超出题目的要求,但是这10000000个数据有他们的特点:1、 输入数据限制在相对较小的范围内2、 数据没有重复3、 对于每条数据,除了单一整数外,没
whosemario
·
2011-09-26 21:00
编程
算法
存储
扩展
byte
电话
博客还是应该继续写下去的
最近突然有个蛋疼的想法,就是重新看一遍《
编程珠玑
》,然后做笔记,写代码,再次消化一遍,而每一次心得都将记录在这个博客里。
whosemario
·
2011-09-25 21:00
从 n 个数种选出 m 个数,随机
从n个数种选出m个数,随机从n个数种选出m个数,随机思路来源于《
编程珠玑
》和TAOCP问题来源:http://topic.csdn.net/u/20110920/20/94c9eba8-ccdf-44eb-b9bc-f2707ca78c99
unixfy
·
2011-09-22 23:00
bitmap与位排序法
编程珠玑
下载: http://ishare.iask.sina.com.cn/f/10532519.html?
michaelh0226
·
2011-09-22 00:00
bitmap
计算机软件经典书籍
CprimerplusTheCprogramminglanguageC和指针C专家教程C陷阱与缺陷c语言解惑C标准库你必须知道的495个C语言问题4.算法与数据结构数据结构(清华版)数据结构与算法分析—C语言描述
编程珠玑
弘列
·
2011-09-21 18:38
职场
计算机
书籍
Reading
计算机软件经典书籍
CprimerplusTheCprogramminglanguageC和指针C专家教程C陷阱与缺陷c语言解惑C标准库你必须知道的495个C语言问题4.算法与数据结构数据结构(清华版)数据结构与算法分析—C语言描述
编程珠玑
弘列
·
2011-09-21 18:38
职场
计算机
书籍
休闲
编程珠玑
- 算法优化 - 过滤敏感词 - 第七步:疯狂测试
到了第六步,我们只是理论上探讨优化的步骤,最后,我们进行集体测试,使用敏感词越多,效果越明显:packagetest; importstaticutil.PrintUtil.print; importjava.io.BufferedReader; importjava.io.FileReader; importjava.io.IOException; importjava.util.Array
方旭
·
2011-09-21 12:00
算法
优化
过滤
敏感词
编程珠玑
- 算法优化 - 过滤敏感词 - 第六步:新的需求
第五步已经完成了所有工作,但是新的需求来了,就是发布广告的人有一些特殊字符来绕过敏感词判断,我们需要把特殊字符过滤掉,那么正常想法就是使用正则表达式来过滤,但是我们实现的这个算法中,可以把特殊字符判断消化在其中:packagetest; importstaticutil.PrintUtil.print; importjava.util.ArrayList; importjava.util.Ar
方旭
·
2011-09-21 12:00
算法
优化
过滤
敏感词
编程珠玑
- 算法优化 - 过滤敏感词 - 第五步:原始类型
在第四步中,我们看到,使用排序好的String[]要比ArrayList查找时候快速的多,因为ArrayList的查找复杂度O(n),而排序好的String[]查找复杂度O(1)。但是我们还是过量依赖String,这个对象本身效率就不高,于是我们需要换成更底层的原始类型进行优化:packagetest; importstaticutil.PrintUtil.print; importjava.
方旭
·
2011-09-21 12:00
算法
优化
过滤
敏感词
编程珠玑
- 算法优化 - 过滤敏感词 - 第四步:二分查找
到第三步,已经把算法优化的精髓掌握了,用树形结构来承载。但是有些细节不容忽视,我们大量使用了ArrayList.contains,效率非常不高。这里进行进一步优化,就是“疯狂的排序、疯狂的二分查找”。packagetest; importstaticutil.PrintUtil.print; importjava.util.ArrayList; importjava.util.Arrays;
方旭
·
2011-09-21 12:00
算法
优化
过滤
敏感词
编程珠玑
- 算法优化 - 过滤敏感词 - 第三步:树形结构
如果发布内容不存在敏感词第一个字集合情况下,test2做出了很大优化,循环次数为发布内容个数。但是如果发布内容村子敏感词,还是使用了test1方法,问题还存在。怎样脱离test1方法?我们可以考虑把敏感词进一步分析,第二个字集合也进行规整、第三个字集合、第四个...。这个让我想到了树形结构: 办 气 裸 土 证 枪 聊 表 枪 出
方旭
·
2011-09-21 11:00
算法
优化
过滤
敏感词
编程珠玑
- 算法优化 - 过滤敏感词 - 第二步:效率问题
就像上一步说的那样,当敏感词超过了一定量时候,效率将会急剧下降。假设发布内容“再顶”,敏感词达到了1000个,按照快速实现的方法,循环1000次,显然不是最优方法。因为“再”,“顶”并没有出现在"办证、气枪、裸聊"的第一个字集合"办、气、裸"中,所以我们可以考虑当搜集所有敏感词第一个字集合来快速判断发布内容是否含有敏感词。packagetest; importstaticutil.PrintUt
方旭
·
2011-09-21 11:00
算法
优化
过滤
敏感词
编程珠玑
- 算法优化 - 过滤敏感词 - 第一步:快速实现
厚着脸皮,使用“
编程珠玑
”。需求:判断出发布内容是否含有敏感词。敏感词:办证、气枪、裸聊发布内容:*****************第一步:快速实现 实现主要功能,没有什么特别地方。
方旭
·
2011-09-21 11:00
算法
优化
过滤
敏感词
编程珠玑
--位图法排序
位图法是《
编程珠玑
》第一章中出现的磁盘排序算法。 题目:一个最多包含n个正整数的文件,每个数都小于n,其中n=10^7,且所有正整数都不重复。求如何将这n个正整数升序排列。
qiuxin315
·
2011-09-21 08:00
编程珠玑
第二章读书笔记 第二章 Aha!算法 (手摇法)
给定一个包含43000,0000,0000,00个32位整数的顺序文件。如何可以找到一个至少出现了两次的整数? 整数数量比32位整数能够表示的数量要多很多。 二分查找一个包含一半以上整数的子区间,递归查找出现两次的单词。不过这种方法不能保证每次都将整数数目减半。如果使用k个通道。每个通道有n/k个数,如果每次都能二分需要进行log(2)(n/k)次查找,最坏情况要进行n/k次查
qiuxin315
·
2011-09-21 08:00
字符串循环移动
编程珠玑
2.3节中的字符串循环移动算法自己写个代码以作记录#include usingnamespacestd; voidCycLeftMove(charszBuf[],intnLen,intnMovNum
qiuxin315
·
2011-09-21 08:00
位图排序算法(一),java版
还是很久以前看的《
编程珠玑
》,开篇就是这个在特殊条件下的排序问题,当时只是粗略的看了一下,并没有真正的理解,现在又翻出了这本书,还是遇到开篇这个问题,但是这次也不知道怎么回事,一下子就理解了,细想一下,
hackerain
·
2011-09-18 18:38
算法
你能正确实现二分检索吗
于是便拿起那本尘封已久的《
编程珠玑
》,随便翻了一页就翻到了二分检索这部分。 二分检索可以解决问题:只要数组中包含T(即要查找的数),那么
SuperFengstark
·
2011-09-10 17:00
编程
算法
面试
你能正确实现二分检索吗
于是便拿起那本尘封已久的《
编程珠玑
》,随便翻了一页就翻到了二分检索这部分。 二分检索可以解决问题:只要数组中包含T(即要查找的数),那么
tudusi
·
2011-09-10 17:00
实现
编程珠玑
(1)
开始看了下
编程珠玑
,书的开篇就是一个排序的问题,今天就来实践一下,稍作修改,如题目大意:生成1千万个1亿以内的不重复的数据集合.
zhoucl
·
2011-08-29 14:00
java
Algorithm
[转载 + 实现] 只有10%程序员能正确实现二分查找算法
只有10%的程序员可以写出二分查找每次翻开《
编程珠玑
》,我都会先看一看下面这几段文字:二分查找可以解决(预排序数组的查找)问题:只要数组中包含T(即要查找的值)
lony1107
·
2011-08-28 13:06
Algorithm
[ + 实现] 只有10%程序员能正确实现二分查找算法
只有10%的程序员可以写出二分查找 每次翻开《
编程珠玑
》,我都会先看一看下面这几段文字: 二分查找可以解决(预排
lony1107
·
2011-08-28 13:00
java
Algorithm
《学习OpenCV》课后
习题解答
(第四章)(仅供参考)(不断更新)
代码在VS2008下通过,要在附加依赖项中添加:opencv_core220d.libopencv_highgui220d.libopencv_imgproc220d.lib。也可以在代码里面添加以下内容:#pragmacomment(lib,"opencv_core220d.lib") #pragmacomment(lib,"opencv_highgui220d.lib") #pragmacom
xiajun07061225
·
2011-08-24 21:00
image
null
processing
callback
float
DST
[找工作]数据结构小结
1.位图 位图的威力可以在<
编程珠玑
>的开头就体会到。另外在Findanintegernotamongfourbilliongivenones中的运用也很精彩。
hex108
·
2011-08-24 20:00
《学习OpenCV》课后
习题解答
(第三章)(仅供参考)
代码在VS2008下通过,要在附加依赖项中添加:opencv_core220d.libopencv_highgui220d.libopencv_imgproc220d.lib。也可以在代码里面添加以下内容:#pragma comment(lib,"opencv_core220d.lib") #pragma comment(lib,"opencv_highgui220d.lib") #pragm
xiajun07061225
·
2011-08-23 19:00
image
struct
border
Matrix
structure
Pointers
2011字符串哈希, 统计词频(from
编程珠玑
)
2011字符串哈希,统计词频(from
编程珠玑
)代码1(STL的map版本)#include#include#includeusing namespace std;intmain(int argc, char
A Za, A Za, Fighting...
·
2011-08-19 14:00
上一页
33
34
35
36
37
38
39
40
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他