電腦程式設計藝術卷3:排序與查找

電腦程式設計藝術卷3:排序與查找

《電腦程式設計藝術卷3:排序與查找》是人民郵電出版社2010年10月1日出版的圖書,作者是美國作家Donald E.Knuth。

基本介紹

  • 書名:電腦程式設計藝術卷3:排序與查找
  • 作者:Donald E.Knuth
  • ISBN:9787115234995, 711523499X
  • 頁數:780
  • 出版社:人民郵電出版社
  • 出版時間:2010年10月1日
  • 裝幀:精裝
  • 開本:16
  • 正文語種:英語
作者簡介,內容簡介,媒體評論,目錄,

作者簡介

作者:(美國)Donald E.Knuth
Donald E.Knuth,1938年1月10日出生於美國明尼蘇達州的米爾沃基,著名計算機科學家,算法與程式設計技術的先驅,史丹福大學計算機系榮譽退休教授,計算機排版系統TEX和METAFONT字型系統的發明人,最年輕的圖靈獎得主。他在計算機科學及數學領域出版和發表了多部具有廣泛影響的著作和論文。
他獲得了很多獎項和榮譽:
1971年獲首屆美國計算機協會(ACM)Grace Murray Hopper獎
·1973年當選為美國科學藝術學院院士
·1974年獲美國計算機協會圖靈獎
·1975年當選為美國國家科學院院士,同年榮獲美國數學協會(MAA)福特獎(Lester R.Ford Award)
·1979年獲卡特總統頒發的美國科學獎
·1981年當選為美國工程院院士
·1982年獲計算機先鋒獎(Computer Pioneer Award)
·1982年成為IEEE榮譽會員
·1986年榮獲美國數學學會(AMS)斯蒂爾獎(Steele Award)
·1988年獲富蘭克林獎章(Franklin Medal)
·1994年獲瑞典科學院Adelskold獎
·1995年獲IEEE馮·諾依曼獎
·1996年獲稻盛基金會京都獎(Kyoto Prize)
Knuth的中文名字高德納廣為人知,這是1977年他訪問中國之前由姚期智教授的夫人姚儲楓所取。

內容簡介

《電腦程式設計藝術》系列被公認為計算機科學領域的權威之作,深入闡述了程式設計理論,對計算機領域的發展有著極為深遠的影響。《電腦程式設計藝術 卷3:排序與查找(英文版·第2版)》是該系列的第3卷,擴展了第1卷中信息結構的內容,主要講排序和查找。書中對排序和查找算法進行了詳細的介紹,並對各種算法的效率做了大量的分析。
《電腦程式設計藝術 卷3:排序與查找(英文版·第2版)》適合從事計算機科學、計算數學等各方面工作的人員閱讀,也適合高等院校相關專業的師生作為教學參考書,對於想深入理解計算機算法的讀者,是一份必不可少的珍品。

媒體評論

這一多卷本的鴻篇巨著被公認為是對經典計算機科學的權威論述,數十年來,前3卷一直是廣大學生、研究人員和業內人士學習程式設計理論和實踐的無價之寶。
這是一部包含一切基礎算法的寶典,是它教給了這一代軟體開發人員關於電腦程式設計的絕大多數知識。
——Byte雜誌1995年9月刊
無數的讀者談到過Knuth的著作對於自己的深刻影響。從事研究的人驚訝於他精美優雅的分析,而普通程式設計師則一直在卓有成效地利用書中提供的各種方案解決日常問題。這些書展現了作者的博觀、清晰、精確和幽默,所有的人都欽佩不已。
我簡直說不清楚這些書給我的學習和娛樂帶來了多少歡樂時光。我在各種場合一有空就仔細研讀,在車上,在餐館,上班時,回到家裡……甚至有次觀看我兒子的球賽,趁他沒上場的時候,我還拿出來看了一陣子。
——Charles Long
它本來是當參考書寫的,但有些人卻發現每一卷都可以興致勃勃地從頭讀到尾。有位中國的程式設計師甚至把它比做讀詩。
如果你自以為是一個很好的程式設計師,請去讀讀Knuth的《電腦程式設計藝術》吧……要是你真把它讀下來了,就毫無疑問可以給我遞簡歷了。
——比爾·蓋茨
不管你的背景如何,只要你想認真地編寫電腦程式。都有很好的理由把這套書的每一卷抱回家。便於研究和工作時隨時翻閱。
20年來Knuth第一次全部修訂了這3卷。我發現,只要翻一翻這些書,就會立竿見影地“鎮住”計算機。
——Jonathan Laventhol

目錄

Chapter 5 Sorting 1
5.1 Combinatorial Properties of Permutations 11
5.1.1 Inversions 11
5.1.2 Permutations of a Multiset 22
5.1.3 Runs 35
5.1.4 Tableaux and Involutions 47
5.2 Internal sorting 73
5.2.1 Sorting by Insertion 80
5.2.2 Sorting by Exchanging 105
5.2.3 Sorting by Selection 138
5.2.4 Sorting by Merging 158
5.2.5 Sorting by Distribution 168
5.3 Optimum Sorting 180
5.3.1 Minimum-Comparison Sorting 180
5.3.2 Minimum-Comparison Merging 197
5.3.3 Minimum-Comparison Selection 207
5.3.4 Networks for Sorting 219
5.4 External Sorting 248
5.4.1 Multiway Merging and Replacement Selection 252
5.4.2 The Polyphase Merge 267
5.4.3 The Cascade Merge 288
5.4.4 Reading Tape Backwards 299
5.4.5 The Oscillating Sort 311
5.4.6 Practical Considerations for Tape Merging 317
5.4.7 External Radix Sorting 343
5.4.8 Two-Tape Sorting 348
5.4.9 Disks and Drums 356
5.5 Summary, History, and Bibliography 380
Chapter 6 Searching 392
6.1 Sequential Searching 396
6.2 Searching by Comparison of Keys 409
6.2.1 Searching an Ordered Table 409
6.2.2 Binary Tree Searching 426
6.2.3 Balanced Trees 458
6.2.4 Multiway Trees 481
6.3 Digital Searching 492
6.4 Hashing 513
6.5 Retrieval on Secondary Keys 559
Answers to Exercises 584
Appendix A Tables of Numerical Quantities 748
1. Fundamental Constants (decimal) 748
2. Fundamental Constants (octal) 749
3. Harmonic Numbers, Bernoulli Numbers, Fibonacci Numbers 750
Appendix B Index to Notations 752
Index and Glossary 757

相關詞條

熱門詞條

聯絡我們