编程珠玑(英文版・第2版)txt,chm,pdf,epub,mobi下载 作者: [美]Jon Bentley 出版社: 人民邮电出版社 原作名: Programming Pearls 出版年: 2010-8 页数: 239 定价: 39.00元 装帧: 塑封 ISBN: 9787115232601 内容简介 · · · · · ·多年以来,当程序员们推选出最心爱的计算机图书时,《编程珠玑》总是位列前列。正如自然界里珍珠出自细沙对牡蛎的磨砺,计算机科学大师Jon Bentley以其独有的洞察力和创造力,从磨砺程序员的实际问题中凝结出一篇篇不朽的编程“珠玑”。这些文章是《ACM通讯》最受欢迎的专栏文章,最终结集为两部书出版。本书为第一卷,主要讨论计算机科学中最本质的问题:如何正确选择和高效地实现算法。 在书中,作者选取许多具有典型意义的复杂编程和算法问题,生动描绘了历史上众多大师们在探索解决方案中发生的轶事、走过的弯路和不断精益求精的历程,引导读者开展创新性的思考。书中透彻阐述和总结了许多独特而精妙的设计原则、思考和解决问题的方法以及实用程序设计技巧。解决方案的代码均以C/C++语言编写,不仅有趣,而且有很大的实战示范意义。每章后所附习题极具挑战性和启发性,书末给出了简洁的解答。... 作者简介 · · · · · ·1953年2月20日出生于美国加州长滩。1974年毕业于斯坦福大学数学系,1976年获北卡罗来纳大学博士学位。他先后任职于卡内基一梅隆大学(1976—1982)、贝尔实验窒(1982—2001)和Avaya实验室(2001年至今)。在卡内基一梅隆大学任教期间。他培养了许多后来知名的计算机大家,包括Scribe的开发者Brian Reid,Tcl语言设计者John Ousterhout。Java专家Joshua Btoch,Java语言设计者James Gosling,《算法导论》作者之—Charles Leiserson。2004年荣获Dr.Dobb's程序设计卓越奖。 目录 · · · · · ·CONTENTSPart I: PRELIMINARIES 1 Column 1: Cracking the Oyster 3 A Friendly Conversation ~ Precise Problem Statement ~ Program Design ~ Implementation Sketch. Principles ~ Problems. Further Reading Column 2: Aha! Algorithms 11 · · · · · ·() CONTENTS Part I: PRELIMINARIES 1 Column 1: Cracking the Oyster 3 A Friendly Conversation ~ Precise Problem Statement ~ Program Design ~ Implementation Sketch. Principles ~ Problems. Further Reading Column 2: Aha! Algorithms 11 Three Problems ~ Ubiquitous Binary Search ~ The Power of Primitives ~ Getting It Together: Sorting. Principles. Problems. Further Reading. Implementing an Anagram Program Column 3: Data Structures Programs 21 A Survey Program ~ Form-Letter Programming ~ An Array of Examples ~ Structuring Data. Powerful Tools for Specialized Data ~ Principles ~ Prob- lems ~ Further Reading Column 4: Writing Correct Programs 33 The Challenge of Binary Search ~ Writing the Program ~ Understanding the Program. Principles ~ The Roles of Program Verification ~ Problems. Further Reading Column 5: A Small Matter of Programming 45 From Pseudocode to C ~ A Test Harness ~ The Art of Assertion ~ Auto- mated Testing ~ Timing ~ The Complete Program. Principles ~ Problems ~ Further Reading ~ Debugging Part II: PERFORMANCE 59 Column 6: Perspective on Performance 61 A Case Study. Design Levels. Principles. Problems ~ Further Reading Column 7: The Back of the Envelope 67 Basic Skills ~ Performance Estimates ~ Safety Factors ~ Little's Law ~ Principles ~ Problems ~ Further Reading ~ Quick Calculations in Everyday Life Column 8: Algorithm Design Techniques 77 The Problem and a Simple Algorithm ~ Two Quadratic Algorithms ~ A Divide-and-Conquer Algorithm ~ A Scanning Algorithm ~ What Does It Matter? ~ Principles. Problems. Further Reading Column 9: Code Tuning 87 A Typical Story ~ A First Aid Sampler ~ Major Surgery Binary Search ~ Principles. Problems. Further Reading Column 10: Squeezing Space 99 The Key Simplicity ~ An Illustrative Problem. Techniques for Data Space. Techniques for Code Space ~ Principles ~ Problems ~ Further Reading ~ A Big Squeeze Part III: THE PRODUCT 113 Column 11: Sorting 115 Insertion Sort ~ A Simple Quicksort ~ Better Quicksorts ~ Principles ~ Problems ~ Further Reading Column 12: A Sample Problem 125 The Problem ~ One Solution. The Design Space. Principles ~ Problems ~ Further Reading Column 13: Searching 133 The Interface ~ Linear Structures ~ Binary Search Trees ~ Structures for Integers. Principles. Problems. Further Reading. A Real Searching Problem Column 14: Heaps 147 The Data Structure ~ Two Critical Functions ~ Priority Queues ~ A Sorting Algorithm. Principles. Problems. Further Reading Column 15: Strings of Pearls 161 Words ~ Phrases ~ Generating Text ~ Principles ~ Problems ~ Further Reading Epilog to the First Edition 175 Epilog to the Second Edition 177 Appendix 1: A Catalog of Algorithms 179 Appendix 2: An Estimation Quiz 183 Appendix 3: Cost Models for Time and Space 185 Appendix 4: Rules for Code Tuning 191 Appendix 5: C++ Classes for Searching 197 Hints for Selected Problems 201 Solutions to Selected Problems 205 Index 233 · · · · · · () "编程珠玑(英文版・第2版)"试读 · · · · · · |
值得观看的一本好书!
还原度很高
非常好的一本书,值得拥有。
翻译得也很棒