你的位置:水利图书 >> >> 电脑编程 >> 详细内容 在线投稿

编程珠玑(第2版)

热度145票 浏览86次 【共0条评论】【我要评论 时间:2010年6月10日 14:32

f {1W~VS:ZpU)N0编程珠玑(第2版)水利图书x't;b)D"m

4p1|n/_ b:bz!GF~0正在读(36人), 已读过(134人) |   放入书架

0M{1T8o+uS:A0 水利图书B^$LW8mi

丛书名: 图灵程序设计丛书水利图书P$X ?AU(bi1k

#O:b\{I{$k/t2{0

6y!R e9I&} |Q0

An-Lu*]"@$z1[s!P;|0作  者: (美)本特利( Bentley,J.) 著;黄倩、钱丽艳 译水利图书sz9JT?1u'Vhr

水利图书nA$hv#w6T-b?&o

出 版 社: 人民邮电出版社水利图书-rxUvu](aq)]_.h

;I2f/S7GSYf#C7l0出版时间: 2008-10-1

M]6co8a2K0

VE\ g$M0字  数: 354000

9Q7W? IWMFYp0 水利图书dcF6?.i6Q1F

版  次: 1水利图书XV I!E~Eu

水利图书 ~VW0Y7b%J[ v

页  数: 228水利图书 L+Q5Wjq

水利图书 FXl5bkv

印刷时间: 2008-10-1

]9q hqS7} z+{}-rcG0

:o/\YTV0开  本: 16开水利图书 j8`6S [RW/[%P

+p7Fv,P#f(m0印  次: 1水利图书*Jv)Qx8U:A

水利图书BsDbdn$u

纸  张: 胶版纸水利图书/yO"Zsf4GZ3t }3S

水利图书3c eOcz/O

I S B N : 9787115179289

s1@"\ SE;y/[0

's Sa5gt6V0包  装: 平装

+Q6l dH8O&o0 水利图书4dt^pK:Q.o[uI

所属分类: 图书 >> 计算机/网络 >> 程序设计 >> 其他水利图书}:t8q)XZK*k

6l5K|)CHap;W? T0最佳拍档水利图书N GY6o!cyB~

3lCN8c~9V(bo t0

dCz+A?+{x5` X0 水利图书LAeD+Y+C7zo)da

水利图书-PFP o5bjF&P s%_%D

水利图书)I!zF4C T|6E

T?a1\q Hr0 水利图书TCq B G!rTk6R,A;zI

程序员修炼之道...

u/G$ux F7~|?*^*p0 水利图书|,Kv0Anu!F

编程珠玑(第2版)水利图书'qz5};VW'Se M+`

水利图书+KpB-@$Sc`8AL

与此 1 件拍档商品一同购买

${3H8j`T8q!j [)e0

R_{O%A,[0e/kg4C0总定价:¥87.00水利图书 v&kh {3Wd

水利图书(b8\3u0uLf2k;f

总当当价:¥72.20

Bi7bmL.~ yN0

'E1W;j ^CT |}0

5\)G B7b"t,h(A \0

1XM*i P@6Gi0请至少保留一件商品。水利图书'z|9NdR3J @P6K

|,_G5CYu&Rc0编辑推荐

;XK$wJf+N nKTs(V0

['ia/o4L8K#e0历史上最伟大的计算机科学著作之一,融深邃思想、实战技术与趣味轶事于一炉的奇书,带你真正领略计算机科学之症状。 水利图书N A,a!H3g&M,`

%P;G3Slm:w m*o'w0  “《编程珠玑》第1版是对我职业生涯早期影响最大的书之一,其中的许多真知灼见多年之后仍然使我受益匪浅。Jon在第2版中对素材进行了大量更新,许多新内容让我耳目一新。”水利图书mx Zb*H4IX \

水利图书f L'yOF

                     ——Steve McConnell,软件工程大师,IEEE Software前主编,《代码大全》作者“对每一位遇到的程序员,我都会毫不迟疑地建议他阅读并不断重读这部经典之作。”

T;`6qb6xa!@0

5vz-`? E3Z[,e$V(w%u0                             ——Stashdot

3FMt:Fp&Y7U8T0 水利图书8wGw2S4i3m1Jt*c

多年以来。当程序员们推选出最心爱的计算机图书时,《编程珠玑》总是位于前列。正如自然界里珍珠出自细沙对牡蛎的磨砺。计算机科学大量Jon Bentley以其独有的洞察力和创造力,从磨砺程序员的实际问题中凝结出一篇篇不朽的编程“珠玑”,成为世界计算机界名刊《ACM通讯》历史上最受欢迎的专栏,最终结集为两部不朽的计算机科学经典名著,影响和激励着一代又一代程序员和计算机科学工作者。本书为第一卷,主要讨论计算机科学中最本质的问题:如何正确选择和高效地实现算法。水利图书F~g+CLT T\

水利图书({ hH'psnd

在书中。作者选取许多具有典型意义的复杂编程和算法问题,生动描绘了历史上众大师们在探索解决方案中发生的轶事、走过的弯路和不断精益求精的历程,引导读者像真正的程序员和软件工程师那样富于创新性地思考,并透彻阐述和总结了许多独特而精妙的设计原则、思考和解决问题的方法以及实用程序设计技巧。解决方案的代码均以C/C++语言编写。不仅有趣。而且有很大的实战示范意义。每章后所附习题极具挑战性和启发性,书末给出了简洁的解答。水利图书Dcmq4A[w'G'Xs

}!{xH3d/?'I+V0作者简介:水利图书 om3w/X`a

水利图书2CXTT!NG

  Jon Bentley,世界著名计算机科学家,被誉为影响算法发展的十位大师之一。他先后任职于卡内基-梅隆大学(1976-1982)、贝尔实验室(1982-2001)和Avaya实验室(2001年至今)。在卡内基-梅隆大学担任教授期间,他培养了包括Tcl语言设计者John Ousterhout、Java语言设计者James Gosling、《算法导论》作者之- Charles Leisersond在内的许多计算机科学大家。2004年荣获Dr.Dobb's程序设计卓越奖。

h/E4T_)x#I0

hm,{QH~0内容简介水利图书 tgn,uC|iIb

水利图书 RYd#O4u

本书是计算机科学方面的经典名著。书的内容围绕程序设计人员面对的一系列实际问题展开。作者Jon Bentley 以其独有的洞察力和创造力,引导读者理解这些问题并学会解决方法,而这些正是程序员实际编程生涯中至关重要的。本书的特色是通过一些精心设计的有趣而又颇具指导意义的程序,对实用程序设计技巧及基本设计原则进行了透彻而睿智的描述,为复杂的编程问题提供了清晰而完备的解决思路。本书对各个层次的程序员都具有很高的阅读价值。水利图书*TBV+[!^,as

)V-eN];O L0目录水利图书+C;Z J2H#QUe+{

P1?O}:ml'p&d0第一部分 基础

+]U2lR4_ Tp(i0 水利图书!r0R*{-D A@+wQ

 第1章 开篇 水利图书`7|SW0}R:]s

水利图书7Z/VQ6y]#G

  1.1 一次友好的对话 水利图书G!u%C#{Y{Io;m-b

z"U8jpjyF V/X0  1.2 准确的问题描述 

H(G N SI4ny*N0 水利图书.gRq0l,UuJ Sa

  1.3 程序设计 

Y{|:EgeRu0

f Hr:[3z u+uG'\P0  1.4 实现概要 

~&g [l8AE0

/N#DvO3|1v?0  1.5 原理 水利图书by0OC+N&yyb

)m?} l%F)`)r6e0  1.6 习题 水利图书r mHU ?%d

水利图书"R$j6Q._F:n i)m*J

  1.7 深入阅读 水利图书4R g8mN9uOU

水利图书 f-aJ}Q)[+]w6K?

 第2章 啊哈!算法 

ocO_v\4Y0

oHH/H Q!Q0  2.1 三个问题 水利图书-Z1z,pS NY

:F qUr#_'m/D0  2.2 无处不在的二分搜索 

)Za`4bQx&C0

m8vl|}OM0  2.3 基本操作的威力 

/?3jG.T L(aP[0 水利图书9x%oi]}

  2.4 排序 水利图书}I)e%iK'B*J

Wa'w&^K&?CtJ AL0  2.5 原理 水利图书5C`-o)R.Q*JA

水利图书y\#dal6]

  2.6 习题 水利图书S bFi4T6nbR#F;BQ

水利图书 v0QD2wC(Zk5]V2Y S

  2.7 深入阅读 水利图书3r,]W)PX ]F VG7c

水利图书T"mD/M/b$~

  2.8 变位词程序的实现(边栏) 

:c8@d ByX5C0 水利图书k5OnBhz?

 第3章 数据决定程序结构 水利图书?M U m)RDvf

On b d XF-L/I#X[0  3.1 一个调查程序 水利图书#`!BU"X0V x'@

w2k"^J3wU.TB*H0  3.2 格式信函编程 

F!Tu*E!P'}S0V)Ak0 水利图书Ax5o3x _;Rn0g

  3.3 一组示例 

9pU Uf9k(o!fc M k'C0

O e&Xe(Q(k0  3.4 结构化数据 

a{ggH%{3MM0 水利图书 } J{2v\ wF

  3.5 用于特殊数据的强大工具 

&py8I$^p4ZH Yf'c0 水利图书nI&Fjncvp

  3.6 原理 

L}-^5e6w-^vJ{0

t9d/]\1W5f0  3.7 习题 

(K)^"|%? s/xZ p)T0

? jTnu0  3.8 深入阅读 

&On$qC7TaC"J0 水利图书 a%@F#_m#y1A

 第4章 编写正确的程序 水利图书FY6jq(\

水利图书gS$EE)S,A9E7[t0D:?

  4.1 二分搜索的挑战

L4|#['_ TQ'z+_0

b\P5E/ChL0  4.2 编写程序 

`\\sq0

.Z-_yy2},Rj$e0  4.3 理解程序 水利图书kE(~$G[7pd

jtAA#B,@0  4.4 原理 水利图书/v!w9m@`

k { m(i}5P_ s0  4.5 程序验证的角色 

:j~] ly0 水利图书^\ro @B

  4.6 习题 

bw Bh|)i9a@t0 水利图书3M n)aLNe C8y5V

  4.7 深入阅读 

/w AZUf"y0 水利图书6hI&FK E9b

 第5章 编程小事 水利图书C-\!f,P4O8z

*[.V(tPne0  5.1 从伪代码到C程序 水利图书,V*_oBy(q

4a%b\n(qqyw*yNM;|0  5.2 测试工具 

6R*z.C)qQ&c0

8[VsbI$CJ0  5.3 断言的艺术 水利图书 [Z ti Xy o#}

;{?%Z1s o0  5.4 自动测试 水利图书*{.B(zv7cEM

5U*H `2tT!g4B0  5.5 计时 

0F }%r:s x6{g0

0S @%RQ7B$j:i8I0  5.6 完整的程序

:S vV qn$U0 水利图书vX:qpZl Ug

  5.7 原理 

*U)]`%z'Z*X+?&\r0

j&S%uy3d W{0  5.8 习题 水利图书SQ [,Sx

'?wS;o[ }-Ah0  5.9 深入阅读 

2\4iy8u'dE0 水利图书%Gd}5?7]9`7z4H#U

  5.10 调试(边栏)水利图书spP+f2x

R:g$G!Fi0第二部分 性能水利图书d7eB+x"g`m4CQ

L{ \b Z2oL-?7k0 第6章 程序性能分析 水利图书_*YOh,T;]a3Z

rXvd.w0  6.1 实例研究 

c;_H#B!s'y"Ra-p0 水利图书{a"I6__1P

  6.2 设计层面 水利图书:p-f*F4M ]T

KvXk9Jn:F0  6.3 原理 水利图书I I,?,};J,gM!Q

水利图书2C7R9[*_:q;iq

  6.4 习题 

*X:c$_K:`f0s0^Ny0

!^+^ma#_ \0  6.5 深入阅读 水利图书ZTI:?? ^ |v,}

%a|zW+J%V(tz~A0 第7章 粗略估算 

.B9V%YYa0

2[dTay#TG1y0  7.1 基本技巧 

4Jm4p H8B RU0

w"|#m$S ?q3B Ws0  7.2 性能估计 水利图书T D'R7x3F8e}Y

水利图书/sF/JP:v6@

  7.3 安全系数 水利图书X\(C+F j ]P

:@y9kx6Q \O@0  7.4 Little定律 

,T |yM5W n:Q0

gR0?7mCjy0  7.5 原理 

yq]-TiZ$s$W q/h0 水利图书 Uz!B/A2do2v+b}

  7.6 习题 

Jq_F"m4@O,}0

P1l.qQS \Q$`3Ur a0  7.7 深入阅读 

X ?k'ySd m0 水利图书"R ZU#h&S9|

  7.8 日常生活中的速算(边栏) 水利图书"VZz3a!je

水利图书OXMem(U!souG

 第8章 算法设计技术 水利图书 `\[,H6ych%o _E

水利图书Z&S)` a!Tn}Dt

  8.1 问题及简单算法 水利图书3X(E{C2D5t#P

s0v2Rb \ fg/?S0  8.2 两个平方算法 水利图书)g!C5pS;N#A Wy%XP y

4W{ C6Gw9L0  8.3 分治算法 

1\`:])IjR1o1g'{8G0

J;IE_5oT x0  8.4 扫描算法 水利图书 I M~c c

水利图书KC)s Xxq0F

  8.5 实际运行时间 

'd5_i)_:^$T%c0 水利图书 ]D*Gr0C

  8.6 原理 水利图书 Q/k,n2@\])j

水利图书${e{9Cm

  8.7 习题水利图书@y+m\L

水利图书g O*I"uHD

  8.8 深入阅读 水利图书twV{dk0~#J@?

水利图书nxc of0I4U0ccX;^1@

 第9章 代码调优 

h^sh6p%vn0

(Nn7]2l"}5|~0  9.1 典型的故事 水利图书`x/hnZW)phC

水利图书 NfrD6^

  9.2 急救方案集锦 水利图书F ` \7wJ

@'C1h*~\$?_0  9.3 大手术——二分搜索 

V*HJ&T0@ pyU0

4xtJ;rx;L0  9.4 原理 

;Ff&r#{Wk0 水利图书+VB U;T eL E m

  9.5 习题 水利图书[?Y3~*kk

v!R5yl:f[I0  9.6 深入阅读 水利图书B;n2w4~:Zz9t

水利图书 pz7_)Mr

 第10章 节省空间 水利图书Iq!o w o i'W lp

水利图书0DO A} B

  10.1 关键在于简单 水利图书a@fE~O/[.v

cZ@jH/A0  10.2 示例问题 

z]G[-]!Qv])kc0 水利图书"C8w nl?'\9i/vGr

  10.3 数据空间技术 

)Tm1V2v4l6D$M2{&H+`r0 水利图书;Lz#jR0Bpzsr

  10.4 代码空间技术 水利图书C x1i|"E$cc

a ^e m:m9iQ NT0  10.5 原理 水利图书 mF&i5]-JH

水利图书W.V A2iLW

  10.6 习题 

Gm2_S l'L0 水利图书u!Dy5MMu]"jt

  10.7 深入阅读 水利图书Pi8h.`@Y!D\%Yw

水利图书B\0Z.q8e4nK

  10.8 巨大的节省(边栏) 水利图书Q sUSL9?4p&b4C,X

,mf1e,uoiaS0第三部分 应用

Z,o0YC"H'\(m2G0 水利图书n$Z J |)Ec

 第11章 排序 水利图书7p!Fq}5H!itsg d.X

水利图书/MdF9D nL

  11.1 插入排序 

.ka1v7e,b1I8m0 水利图书{ PM&X@

  11.2 一种简单的快速排序 水利图书0H D Q6I Ly_

水利图书 |aD/N"q5e(UpmI

  11.3 更好的几种快速排序 

2a%Bd4}mS)@&c0 水利图书-v*^,Dk {-x%D\

  11.4 原理 水利图书+`aIxVqA*_T

5q6K9Eq$t{K0  11.5 习题 

f&| qLyb3a3I0

8{'Yra3h0  11.6 深入阅读 水利图书#B.R nBuE

g0o'F/x'K%XQ*Q ]y0 第12章 取样问题水利图书2` f[ G2A)NuS^

水利图书vxu-b(Y"nEE2kF4s

  12.1 问题 水利图书+d3zqE-YQ

4Yb7q'Rm J#@0  12.2 一种解决方案 水利图书7lO Gc1S5{ O1I&N

水利图书$Go%c~4T&S9}2o0{

  12.3 设计空间 水利图书6B&]/m)c+k!?X

水利图书A4b)okX&Sy(Q

  12.4 原理 水利图书lJ^P7O3eR,v

水利图书Wi8hg&FM)t+u lgn

  12.5 习题 水利图书f NRC/yrG[

水利图书 OT ^ eS`&_Y

  12.6 深入阅读 水利图书5T7X ?Adp)e

水利图书&a3RjN q h*W

 第13章 搜索 水利图书@p6M9^BWp

水利图书+A4Q2`_*PO c

  13.1 接口 水利图书/b[f mP

L O5p,YE~ a(l0J0  13.2 线性结构 水利图书?p7{n%tJs-CP

-JgAhK0  13.3 二分搜索树 水利图书;dg mp+R2ul ^

水利图书t b1c3A%?x5D#{9TA

  13.4 用于整数的结构 

(xKHQ(`^&] F0 水利图书6k1IZ9e2j#Nas&M

  13.5 原理 水利图书6Kn&|1GK0D Ra I

水利图书9LhK7n5~q)V$rE;k

  13.6 习题 水利图书6W8ix*F(PS$cR*D

/ka\e'W*O0  13.7 深入阅读 

5Ce"A?KK1ATaT0 水利图书(A+h%gee

  13.8 一个实际搜索问题(边栏) 水利图书toDb:ao

水利图书+x@-I_7Z1a'_/q

 第14章 堆 

L_3hJ,^6S gO v0 水利图书!d"x(d s7Xv/[+? ~6i

  14.1 数据结构 水利图书@(OVjqx

水利图书JZ4?(O6i&G

  14.2 两个关键函数 水利图书EYx'kSt(A

9E6q w_0y:oC0  14.3 优先级队列 

l/v#n(W(_$F8{Bb0

7xGd:Xe2~8wd0  14.4 一种排序算法 水利图书m B F%XZ)f5a3f

:Cs4AA$Mb"T0  14.5 原理 水利图书y z$Mz;v WK

水利图书#f d'\.~!@$xId Z

  14.6 习题 水利图书R)i]6If Q'iO

.U[%K})A k;Bv|@0  14.7 深入阅读 

e(T#`%D#Bq;` _0

8a } J A$DZ0sI\/vz0 第15章 字符串 

)u9^M!m.I7I0 水利图书3FU4G.A9f0kS tC+_

  15.1 单词 

W l&G,qE4l@^3S9G+y*k/l0

{"NV4Jh0  15.2 短语 

7~lGaJur}Z d0

\:h;\)Ix!E/z0  15.3 生成文本 水利图书}&Z-LY:UG ZT

水利图书\9C\&VJZX3Mz@

  15.4 原理 水利图书#] T5jGO0}b

G!gh f0G'k0  15.5 习题 水利图书"M2}|i@A.w)U+M

水利图书i6}%kF6k7J;Em

  15.6 深入阅读 

~#I!TAE i?Z0

7YrH%geUd*o(U;W0第1版跋 

f2C_8JziJ0

6h p'^+E0f+H9}+a0第2版跋 

'c%RC cd`?'}0

T@E1^i? L,~|'mE0附录A 算法分类 水利图书Y?#j&_qM

水利图书F }&qWC_+F

附录B 估算测试 

v3T7Lt,QC0

:~?'E RB h*~u'B0附录C 时空开销模型 水利图书.R4e%C1I2}:s.PV J)K

水利图书Lw6e,x;^ F

附录D 代码调优法则 水利图书)FI{!Z$uqv7Dl.D

水利图书l8j6}y8q2j2K]

附录E 用于搜索的C++类 

%p@;B2dt6[^p5h0

-m z R2`:^T0部分习题提示 水利图书'?Es5m'` S}pB#l

|?g#t"n6U'Z0部分习题答案 水利图书c P3]"t!\(QI

水利图书:l ye P3E/I!E

索引

X9~]A2x(h0

2k v f5Mv8YR"]Tu0书摘插图水利图书'_pg YEL,~

`&iE\9x+{!^(]O0第一部分 基础水利图书1M hv [2I%{O"P

~VRAH9o c5bD8y0 第1章 开篇   

5S5@[Hq a Mq0

{@.K7uR0  1.2 准确的问题描述

K3X ]8@0g%i:]Q0 水利图书[en"D/m*_

对程序员来说,这些需求加起来就是:“如何给磁盘文件排序?”在试图解决这个问题之前,先将已知条件组织成一种更客观、更易用的形式。水利图书Ub1qx ?Qx s

水利图书!eGd+j`8[;A;g

  输入:一个最多包含n个正整数的文件,每个数都小于n,其中n=107。如果在输入文件中有任何整数重复出现就是致命错误。没有其他数据与该整数相关联。水利图书`&HQ;TFZ(qCcI4d

水利图书.b#EcE/j] n

  输出:按升序排列的输入整数的列表。水利图书'c@3K&l.jSs

水利图书BUqu,_;l&y:A2}

  约束:最多有(大约)1MB的内存空间可用,有充足的磁盘存储空间可用。运行时间最多水利图书7Jz.b`FPk&~{G

Ukhlw0几分钟,运行时间为10秒就不需要进一步优化了。

3X,D$p9C|3W-Bl0

QN`G iY@}0  请花上一分钟思考一下该问题的规范说明。现在你打算给程序员什么样的建议呢?水利图书n.SJ1b6MO.p2r4Fj

o2e3m]}nzYT0  1.3 程序设计

)]MH9o#pDGo)q EQ0

,NlsX`du}(dQ0显而易见的方法是以一般的基于磁盘的归并排序程序为起点,但是要对其进行调整,因为我们是对整数进行排序。这样就可以将原来的200行程序减少为几十行,同时也使得程序运行得更快,但是完成程序并使之运行可能仍然需要几天的时间。水利图书],h;l5T9[#i M^

+h OM#O?+zE0另一种解决方案更多地利用了该排序问题的特殊性。如果每个号码都使用7个字节来存储,那么在可用的1MB存储空间里大约可以存143 000个号码。如果每个号码都使用32位整数来表示的话,在1MB存储空间里就可以存储250000个号码。因此,可以使用遍历输入文件40趟的程序水利图书h3X)a'u7hd)d

Q8c s6w4}nq0来完成排序。在第一趟遍历中,将0至249999之间的任何整数都读入内存,并对这(最多)250000个整数进行排序,然后写到输出文件中。第二趟遍历排序250000至499999之间的整数,依此类推,到第40趟遍历的时候对9750000至9999999之问的整数进行排序。对内存中的排序来说,快速排序会相当高效,而且仅仅需要20行代码。于是,整个程序就可以通过一两页纸的代码实现。该程序拥有所期望的特性——不必考虑使用中间磁盘文件;不幸的是,为此所付出的代价是要读取输入文件40次。

)t0{q?E$|VAH0 水利图书.@G U&B#uz)e)gt

  1.5 原理水利图书x9U$ax-aM Y

水利图书F)R?[6b

那个程序员打电话把他的问题告诉我,然后我们花了大约一刻钟时问明确了问题所在,并找到了位图解决方案。他花了几个小时来实现这个几十行代码的程序。该程序远远优于我们在电话刚开始时所担心的需要花费一周时间编写的几百行代码的那个程序。而且程序执行得很快:磁盘上的归并排序可能需要许多分钟的时间,该程序所需的时间只比读取输入和写入输出所需的时间多一点点——大约10秒钟。答案3包含了对完成该任务的几种不同程序的计时细节。

waO:tqOP0

~fJcD d8_0从这些事实中可以总结出该实例研究所得到的第一个结论:对小问题的仔细分析有时可以得到明显的实际益处。在该实例中,几分钟的仔细研究可以大幅削减代码的长度、程序员时间和程序运行时间。Chuck Yeager将军(第一个超音速飞行的人)赞扬一架飞机的机械系统时用的词是“结构简单、部件很少、易于维护、非常坚固”,该程序拥有同样的属性。然而,当规范说明的某些因素发生改变时,该程序的特殊结构将很难修改。除了需要精巧的编程以外,该实例阐明了如下一般原理。水利图书)y#DHU3hP

水利图书7cr^/i1nXKo,] ~{

正确的问题。明确问题,这场战役就成功了90%——我很庆幸程序员没有满足于我给出的第一个程序。一旦正确理解了问题,习题10、习题11和习题12的答案都会很优雅。在查看提示和答案以前,请努力思考这些问题。

ghN$m/~,ra0 水利图书/Ajb f C u9?&]WIU

位图数据结构。该数据结构描述了一个有限定义域内的稠密集合,其中的每一个元素最多出现一次并且没有其他任何数据与该元素相关联。即使这些条件没有完全满足(例如,存在重复元素或额外的数据),也可以用有限定义域内的作为一个表项更复杂的表格的索引,见习题6和习题8。

E;Pw rt'U q#U0 水利图书 }@oT$h,be

  多趟算法。这些算法多趟读入其输入数据,每次完成一步。在1.3节已经见到了一个40趟算法,习题5鼓励读者去完成一个两趟算法。

f1K%Y8m`*b0

r$}[UgpI(@0时间一空间折中与双赢。编程文献和理论中充斥着时间一空间的折中:通过使用更多的时间,可以减少程序所需的空间。例如,答案5中的两趟算法让程序运行时间加倍从而使空间减半。但我的经验常常是这样的:减少程序的空间需求也会减少其运行时间。空间上高效的位图结构显著地减少了排序的运行时问。空间需求的减少之所以会导致运行时间的减少,有两个原因:需要处理的数据变少了,意味着处理这些数据所需的时间也变少了;同时将这些数据保存在内存中而不是磁盘上,进一步避免了磁盘访问的时间。当然了,只有在原始的设计远非最佳方案时,才有可能时空双赢。水利图书/n4Cj)`3h4wh BE

q7E&|RO^2h0简单的设计。Antoine de Saint—Exupery是法国作家兼飞机设计师,他曾经说过:“设计者确定其设计已经达到了完美的标准不是不能再增加任何东西,而是不能再减少任何东西。”更多的程序员应该使用该标准来检验自己完成的程序。简单的程序通常比具有相同功能的复杂程序更可靠、更安全、更健壮、更高效,而且易于实现和维护。

*wBV&] sLE0 水利图书Yf)A_1et

  ……水利图书e0A;x n;zk/r

水利图书|p)Ut,ai0e$QZ1q Xn

书摘与插图

/r8|sg4vX'oO0 水利图书A],G C]&E5x.bg_:\-X

水利图书pMpfA N_

顶:10 踩:9
对本文中的事件或人物打分:
当前平均分:0 (48次打分)
对本篇资讯内容的质量打分:
当前平均分:-0.68 (40次打分)
【已经有38人表态】
10票
感动
4票
路过
4票
高兴
3票
难过
4票
搞笑
1票
愤怒
4票
无聊
8票
同情
下一篇:C#高级编程(第6版)
上一篇:C#编程风格(英汉对照)

水资讯网广告招租

查看全部回复【已有0位网友发表了看法】

广告投放

广告投放