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
编程珠玑习题解答
[
编程珠玑
读书笔记]最长重复子串
问题定义: 给定一个输入文本文件,查找其中最长的重复子字符串。例如,"Asknotwhatyourcountrycandoforyou,butwhatyoucandoforyoucountry"中最长的重复字串就是"candoforyou","yourcountry"是第二长的重复字串。如何编程找出最长的重复字串?如何找出出现次数超过M的重复字串?示例1,从控制台输入:#include #inc
lalor
·
2012-02-23 00:00
编程
String
File
null
读书
FP
[
编程珠玑
读书笔记]第一章代码实现
用C++的bitset实现非常的方便:/************* 位图排序算法实现 *************/ #include #include #include usingnamespacestd; intmain() { //查看bitset的实现可知bitset是利用对unsignedlong进行位运算间接实现对位的存储的 //如是保存一个32位的bitset实质是保存了4个unsig
lalor
·
2012-02-22 23:00
[
编程珠玑
读书笔记]最好的快速排序与库函数中的排序函数比较
#include #include #include #include usingnamespacestd; constintMAX=100000; voidswap(int*data,inti,intj) { inttemp=data[i]; data[i]=data[j]; data[j]=temp; } voidInsertSort3(int*data,intn) { inti,j,tem
lalor
·
2012-02-22 22:00
编程
读书
[
编程珠玑
读书笔记]快速排序
一步一步优化的快速排序,速度比插入排序快很多,而且可以很方便的引入随机算法来避免最差情况。#include #include #include #include #include //#include usingnamespacestd; #defineDEBUG constintMAX=1000000; intcutoff=10; voidswap(int*data,inti,intj) { i
lalor
·
2012-02-22 21:00
编程
优化
算法
测试
读书
[
编程珠玑
读书笔记] 插入排序
这么简单的插入排序,都可以优化,还有什么是不可以优化的。最让我惊讶的是,当多次调用一个函数的时候,函数的调用开销是不可忽略的。正如测试结果所示:#include #defineMAX1000000 voidswap(int*data,inti,intj) { inttemp=data[i]; data[i]=data[j]; data[j]=temp; } //未经过优化的插入排序,简单直观 vo
lalor
·
2012-02-22 19:00
编程
优化
测试
读书
深入理解二分查找(一、二分查找及其变体)
标准二分查找:注意:退出原因有两个——“arr[mid]==value,即找到”或者“l==r且仍未找到”(这个版本代码根据《
编程珠玑
》)privatestaticvoidfind(int[]a
chuanwang66
·
2012-02-22 10:00
二分查找
深入理解二分查找(一、二分查找及其变体)
标准二分查找:注意:退出原因有两个——“arr[mid]==value,即找到”或者“l==r且仍未找到”(这个版本代码根据《
编程珠玑
》)privatestaticvoidfind(int[]a
chuanwang66
·
2012-02-22 10:00
二分查找
编程珠玑
,字字珠玑
最近,我终于有了一个明确的答案,在这些算法相关的书籍中,最让我爱不释手的是《
编程珠玑
》这本薄薄的小册
dingx
·
2012-02-19 13:00
java
redis
数据结构
编程
算法
服务器
编程珠玑
,字字珠玑
最近,我终于有了一个明确的答案,在这些算法相关的书籍中,最让我爱不释手的是《
编程珠玑
》这本薄薄的小
DigitalSonic
·
2012-02-19 13:00
读书
心得
infoq
编程珠玑
_第十三章_生成一个随机整数的有序集合
题目:生成一个随机整数的有序集合 1线性结构数组 链表2二分搜索树3位向量#include usingnamespacestd; enum{BITSPERWORD=32,SHIFT=5,MASK=0x1F}; classIntSetBitVec { public: IntSetBitVec(intmaxelements,intmaxval); voidreport(int*
pp5576155
·
2012-02-17 21:00
数据结构
编程
算法
report
Class
insert
旋转字符串
一:问题描述:
编程珠玑
第二章的第二个问题是字符串(或者理解为向量)旋转问题,具体描述如下:rotateaone-dimensionalvectorofnelementsleftbyipositions.eg
jackyhongvip
·
2012-02-17 13:00
字符串
finding anagrams(颠倒字母而成的字) of a given word;
编程珠玑
之如何找出一个单词的换位词; 如何找出字典中的兄弟单词 .
问题的描述:在
编程珠玑
里面是这样的:据说是百度的一个面试题,是这样描述的:其实总结下问题描述其实是差不多的:给定一个字典(即单词序列),用户输入一个单词,求出字典中单词的变换?
jackyhongvip
·
2012-02-16 10:00
word
扫描算法
具体讲解见
编程珠玑
这里只是一个简单的例子: 计算一个整形数组里的连续元素和的最大值 例:{9, -12, 120, 8, -20, 100, 30, -89, 20} /** *
jackyhongvip
·
2012-02-15 23:00
算法
编程珠玑
第四章-编写正确的程序
本章的目的是阐述如何利用对程序验证的理解帮助程序员写出正确的程序。作者再一次提到:编程技巧仅仅是编写正确程序的很小一部分,大部分内容还是前面三章讨论过的主题:问题定义、算法设计以及数据结构选择,如果这些步骤都完成很好,那么编写正确的程序通常是很容易的。本章引入了二分查找的问题,通过利用程序验证的思路,保证程序正确高效。在问题解决的过程中,通过一些细节阐述了许多一般性的原理,包括以下方面:1)断言。
cai0538
·
2012-02-11 20:00
数据结构
编程
算法
语言
编程珠玑
第八章-算法设计技术
本章就一个小问题研究了四种不同的算法,重点强调了这些算法的设计技术,综合本章内容,告诉我们:复杂深奥的算法有时可以极大地提高程序性能。问题定义:具有n个浮点数的向量x,求出输入向量的任何连续子向量的最大和。立方算法:maxsofar=0;for i=[0,n) forj=[i,n) sum=0; fork=[i,j] sum+=x[k] maxsofar=max(
cai0538
·
2012-02-11 16:00
数据结构
编程
算法
扩展
float
求子数组之和最大值(包括循环)
编程珠玑
中给出了n*logn的解法,很有参考价值。
bertzhang
·
2012-02-08 15:00
编程
算法
编程珠玑
番外篇
1.Plan9的八卦在Windows下喜欢用FTP的同学抱怨Linux下面没有如LeapFTP那样的方便的工具.在苹果下面用惯了Cyberduck的同学可能也会抱怨Linux下面使用FTP和SFTP是一件麻烦的事情.其实一点都不麻烦,因为在LINUX系统上压根就不需要用FTP.为什么呢?因为一行简单的配置之后,你就可以像使用本机文件一样使用远程的任何文件.无论是想编辑,查看还是删除重命名,都和本机
szu030606
·
2012-02-05 14:00
编程
正则表达式
语言
lisp
smalltalk
fortran
编程珠玑
番外篇
1.Plan9的八卦在Windows下喜欢用FTP的同学抱怨Linux下面没有如LeapFTP那样的方便的工具.在苹果下面用惯了Cyberduck的同学可能也会抱怨Linux下面使用FTP和SFTP是一件麻烦的事情.其实一点都不麻烦,因为在LINUX系统上压根就不需要用FTP.为什么呢?因为一行简单的配置之后,你就可以像使用本机文件一样使用远程的任何文件.无论是想编辑,查看还是删除重命名,都和本机
iteye_14514
·
2012-02-05 14:00
测试
awk
php
《
编程珠玑
(第2版)》笔记——将一个n元一维向量向左旋转i个位置(第2章)
算法《
编程珠玑
(第2版)》的第2章,一开始就给出三个问题,其中问题B很有意思:将一个n元一维向量向左旋转i个位置。例如,当n=8且i=3时,向量abcdefgh旋转为defghabc。
gavinming
·
2012-02-01 15:00
编程
算法
工作
存储
使用位图做整型ID去重的一种方法
《
编程珠玑
》中提到一个位图算法的例子:输入:一个文件,里面大约有1千万行数据,每个数据是7位整数,同时每个数是唯一的,即不允许有2个数相同,这些整数不与其他任何数产生关联。
harry
·
2012-01-29 11:00
使用位图做整型ID去重的一种方法
《
编程珠玑
》中提到一个位图算法的例子: 输入:一个文件,里面大约有1千万行数据,每个数据是7位整数,同时每个数是唯一的,即不允许有2个数相同,这些整数不与其他任何数产生关联。
harry
·
2012-01-29 11:00
方法
撒列实现关键字过滤,速度可快了
直到我看了《
编程珠玑
(第二版)》中的这么一段文字:“假定我们可以在执行搜索之前对文本内容进行预处理,那么我们可以建立一个撒列表(或者搜索树),为文档中的每个不同的单词建立索引,并为每个单
chentaihan
·
2012-01-20 23:00
数据库
String
搜索引擎
测试
null
Class
撒列实现关键字过滤,速度可快了
直到我看了《
编程珠玑
(第二版)》中的这么一段文字:“假定我们可以在执行搜索之前对文本内容进行预处理,那么我们可以建立一个撒列表(或者搜索树),为文档中的每个不同的单词建立索引,并为每个单
不断的谦逊,不断的努力
·
2012-01-20 17:00
等快递无聊--旋转字符串
等快递无聊--旋转字符串真是个无语的周末,昨天下午等了几个小时的快递,买了两本书《代码大全》和《
编程珠玑
》,还有别人的衣服,今天一大早又跑到公司来等快递,又是别人的衣服,还没有到呢,做专业的代购真是无语
不断的谦逊,不断的努力
·
2012-01-08 11:00
求序列的最大子序列
看《
编程珠玑
》一书,讲解求序列的最大子序列。
sumoyu
·
2012-01-07 21:00
编程
算法
n2
取一个集合的前n个最大或最小值
《
编程珠玑
》第十四章的一个问题是:在具有10亿个数值的文件中找出最大的100万个数组。 使用堆解决这个问题的思路1.取10亿个数值中的最初的100万个,放到一个堆中,初始化这个堆为小顶堆。
sumoyu
·
2011-12-29 17:00
HDOJ 1403:Longest Common Substring 后缀数组的用处
以前在《
编程珠玑
》上看过后缀数组的作用,不过那道题的是针对单个字符串求最大重复连续子串的,而这道题是要求两个字符串的最长公共连续子串。一段时间内并不能把书上的那个解法应用到这道题上来。
bruce128
·
2011-12-22 16:00
编程
struct
url
System
程序员编程艺术第二十五章:Jon Bentley:90%无法正确实现二分查找
也许很多人都早已听说过这句话,但我还是想引用《
编程珠玑
》上的如下几段文字: “二分查找可以解决(预排序数组的查找)问题:只要数组中包含T(即要查找的值),那么通过不断缩小包含T的范围,最终就可以找到它。
July_
·
2011-12-21 19:00
程序员编程艺术第二十五章:Jon Bentley:90%无法正确实现二分查找
也许很多人都早已听说过这句话,但我还是想引用《
编程珠玑
》上的如下几段文字: “二分查找可以解决(预排序数组的查找)问题:只要数组中包含T(即要查找的值),那么通过不断缩小包含T的范围,最终就可以找到它。
v_JULY_v
·
2011-12-21 19:00
编程
算法
测试
Blog
文档
chm
程序员编程艺术第二十五章:Jon Bentley:90%无法正确实现二分查找
也许很多人都早已听说过这句话,但我还是想引用《
编程珠玑
》上的如下几段文字:“二分查找可以解决(预排序数组的查找)问题:只要数组中包含T(即要查找的值),那么通过不断缩小包含T的范围,最终就可以找到它。
izuoyan
·
2011-12-21 19:00
二分查找
编程珠玑
3.7.6
以下内容转自http://www.haogongju.net/art/994660《
编程珠玑
》上提到当要输入的数据很多,且没有规律时,可以考虑编写一个格式信函发生器(formlettergenerator
buptdtt
·
2011-12-12 21:27
编程
职场
休闲
字母
banner
《
编程珠玑
》习题3.7.3
题目:编写处理一下日期问题的函数:给定两个日期,计算两者之间的天数;给定一个日期,返回值为周几;给定月和年,使用字符数组生成该月的日历。以下内容转自http://www.netmediac.com/article/3463.html「分析」1.给定两个日子,计算两个日子之间的天数解决思路:①计算该日子是该年当中的第几天;②闰年的处理;③两个日子的年份之间经过几个闰年。2. 给定某个日子,返回它在一
buptdtt
·
2011-12-12 16:33
编程
职场
日历
休闲
海量数据处理面试题
可以用
编程珠玑
里的位图来处理,由于内存只有600M,刚好可以将数据分作正,负和0来处理,这个范围是两个2^31,那就是一次处理位图占用512M的内存。
·
2011-12-09 22:00
海量数据
编程珠玑
总结
column1:bitvectoroperation:#defineBITSPERWORD32 #defineSHIFT5 #defineMASK0x1F #defineN10000000 inta[1+N/BITSPERWORD];voidset(inti){a[i>>SHIFT]|=(1>SHIFT]&=~(1>SHIFT]&(1>SHIFT]&(1voidrotate_rcur(T*a,in
fatshaw
·
2011-11-28 20:00
数据结构
编程
算法
Random
permutation
Numbers
IT好书好文章
《
编程珠玑
》。这本书讲了作者亲身经历的一些编程问题,通过这些问题,来讲述编程的时候具体应该怎么一步步来做,每一步应该注意什么。读这本书不仅需要比较深的算法
mazheng1989
·
2011-11-27 23:00
读《
编程珠玑
》笔记
《
编程珠玑
》是一本很好的,经典的程序设计书。这两天开始读,有种“相见恨晚“的感觉。书中通过讲述作者自己的亲身体会来说明程序设计的艺术。很有感染力。 第一章 讲述了一个电话号码排序的故事。
mazheng1989
·
2011-11-22 11:00
阅读者(十七):
编程珠玑
,字字珠玑
最近,我终于有了一个明确的答案,在这些算法相关的书籍中,最让我爱不释手的是《
编程珠玑
》这本薄薄的小册
丁雪丰
·
2011-11-21 00:00
阅读者(十七):
编程珠玑
,字字珠玑
最近,我终于有了一个明确的答案,在这些算法相关的书籍中,最让我爱不释手的是《
编程珠玑
》这本薄薄的小册
丁雪丰
·
2011-11-21 00:00
部分面试题解题思路
解题笔记(2)——部分面试题解题思路分类: 解题笔记2011-07-1115:30 699人阅读 评论(4) 收藏 举报这几天在网上看到一篇关于算法面试题的博客,归纳的很好,有不少经典的题目,大部分来自《
编程珠玑
zhongjiekangping
·
2011-11-17 22:00
编程
算法
面试
null
Random
扩展
解题笔记
编程珠玑
第一章补充
2、求出2.5亿个整数中不重复的数字,注意内存无法存下2.5亿的数字。(1)说明你的思路(2)写出你的算法,可以用语言实现或者用伪代码表示 个人提示:位图法1、这里用到两个位图,先填充第一个位图a。当发现一个数字被填充过之后,则用这个数字填充b。很明显,b中记录的是重复出现过的数字。2、当扫描完一次之后。再扫描b位图。只要出现在b位图中的数,就拿去清除a位图中的位。最后a中的数字保证是只出现一次的
ju136
·
2011-11-16 22:00
编程珠玑
第8章-课后习题10题补充
按照原题的意思是在题目上进行扩展。本来是要找一个连续子数组,其和最大。那么现在习题的要求是找到这么一个连续子数组,其和的绝对值最接近0。O(n^3)或O(^2)的实现都很好处理。O(n^3)到O(n^2)的差别在于可以一次性求出sum(i~~j)的值。这个可以想一下的。如下例intsum[n];sum[0]=a[0];for(inti=1;i#include#include#defineabs(x
ju136
·
2011-11-16 12:10
编程珠玑
编程珠玑
第8章-课后习题10题补充
按照原题的意思是在题目上进行扩展。本来是要找一个连续子数组,其和最大。那么现在习题的要求是找到这么一个连续子数组,其和的绝对值最接近0。O(n^3)或O(^2)的实现都很好处理。O(n^3)到O(n^2)的差别在于可以一次性求出sum(i~~j)的值。这个可以想一下的。如下例intsum[n]; sum[0]=a[0]; for(inti=1;i #include #include #defin
ju136
·
2011-11-16 12:00
算法导论6.5-8
习题解答
(最小堆K路合并)
《算法导论》第六章第五节的第8题,原题为:请给出一个时间为O(nlgk)、用来将k个已排序链表合并为一个排序链表的算法。此处n为所有输入链表中元素的总数。(提示:用一个最小堆来做k路合并)。算法思想:1.从k个链表中取出每个链表的第一个元素,组成一个大小为k的数组arr,然后将数组arr转换为最小堆,那么arr[0]就为最小元素了2.取出arr[0],将其放到新的链表中,然后将arr[0]元素在原
lichaoyin
·
2011-11-04 17:00
面试常见题目之海量数据排序(
编程珠玑
总结一)
编程珠玑
是很经典的算法讨论书籍,想进大公司的朋友还是要好好啃啃的,思路可谓经典,引入位向量概念。比如常见与国内某社交网站(自然很山寨,我们大学时常用)的面试题目。
mznewfacer
·
2011-11-02 21:00
面试常见题目之海量数据排序(
编程珠玑
总结一)
编程珠玑
是很经典的算法讨论书籍,想进大公司的朋友还是要好好啃啃的,思路可谓经典,引入位向量概念。 比如常见与国内某社交网站(自然很山寨,我们大学时常用)的面试题目。
wangxiaohigh
·
2011-11-02 21:00
海量数据
编程珠玑
- 代码调优法则 - 消除循环
简单,但有说明意义:f(x)=1-2+3-4+5...+x快速实现:publicstaticintf(intx){ intb=0; for(inti=1;i<=x;i=i+2) b+=i; for(inti=2;i<=x;i=i+2) b-=i; returnb; }我们通过观察可以消除不必要的循环:publicstaticintg(intx){ if(x%2==0) return-(x/2);
方旭
·
2011-10-22 00:00
编程珠玑
调优
法则
代码调优
消除循环
编程珠玑
- 代码调优法则 - 基础篇
鄙人不耻,把
编程珠玑
中内容摘录下来,加深印象,仅供参考:一、空间换时间法则: 1、修改数据结构。增加额外的信息来减少运算。 2、存储预先计算好的结果。 3、高速缓存。
方旭
·
2011-10-21 23:00
编程珠玑
调优
法则
代码调优
操作系统
习题解答
转自:http://blog.csdn.net/randyjiawenjie/article/details/6830379每次笔试,我都在操作系统的计算题中大费脑筋,以前学操作系统的时候,确实没有怎么做题。其实,各大公司出的题目都是作业题目,这一点我很不占优势。1.页式存储管理地址转换问题http://www.isenyo.com/?p=9若在一分页存储管理系统中,某作业的页表如下所示。已知页
ysdaniel
·
2011-10-21 23:00
书单
程序设计培训教程计算机算法设计与分析数据结构与算法分析C++描述(第三版)进阶书:算法导论算法艺术与信息学竞赛(刘汝佳的黑书,难度较深,不适合新手)+实用算法的分法与程序设计其他: 编程之美--微软技术面试心得 ProgrammingPearls
编程珠玑
insistGoGo
·
2011-10-21 20:00
数据结构
编程
c
算法
面试
微软
笔试心得
这些天和师兄一起去参加笔试,比较发现,笔试前,下面几本书详细看看,笔试可以无忧:1,数据结构2,
编程珠玑
3,概率论4,C编程语言(K&R)5,算法导论
lxmky
·
2011-10-20 10:00
上一页
32
33
34
35
36
37
38
39
下一页
按字母分类:
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
其他