The leading introduction to computer algorithms in use today, including fifty algorithms every programmer should know Princeton Computer Science professors, Robert Sedgewick and Kevin Wayne, survey the most important computer algorithms in use and of interest to anyone working in science, mathematics, and engineering, and those who use computation in the liberal arts. They provide a full treatment of data structures and algorithms for key areas that enable you to confidently implement, debug, and put them to work in any computational environment.  Fundamentals: Basic programming modelsData abstractionBags, queues, and stacksAnalysis of algorithms  Sorting Elementary sortsMergesortQuicksortPriority queuesApplications  Graphs Undirected graphsDirected graphsMinimum spanning treesShortest paths Strings String sortsTriesSubstring searchRegular expressionsData compression These algorithms are generally ingenious creations that, remarkably, can each be expressed in just a dozen or two lines of code. As a group, they represent problem-solving power of amazing scope. They have enabled the construction of computational artifacts, the solution of scientific problems, and the development of commercial applications that would not have been feasible without them.
Les mer
Chapter 1: Fundamentals 1.1 Programming Model   1.2 Data Abstraction 1.3 Queues, Stacks, and Bags 1.4 Analysis of Algorithms 1.5 Case Study: Union-Find   Chapter 2: Sorting 2.1 Elementary Sorts 2.1 Elementary Sorts 2.2 Mergesort 2.3 Quicksort 2.4 Priority Queues 2.5 Applications   Chapter 3: Searching 3.1 Symbol Tables 3.1 Symbol Tables 3.2 Binary Search Trees 3.3 Balanced Search Trees 3.4 Hash Tables 3.5 Applications   Chapter 4: Graphs 4.1 Undirected graphs 4.1 Undirected graphs 4.2 Directed graphs 4.3 Minimum Spanning Trees 4.4 Shortest Paths   Chapter 5: Strings 5.1 String Sorts 5.1 String Sorts 5.2 Tries 5.3 Substring Search 5.4 Regular Expressions 5.5 Data Compression   Context Systems Programming Systems Programming Scientific Computing Commercial Applications Operations Research Intractability   Index
Les mer
The long-time best-seller on using algorithms -- now fully updated, broadened, and available again in a popular single-volume format!   The #1 practical resource for everyone seeking to run programs faster or solve larger problems Surveys today's most useful algorithms, with copious illustrations and examples Contains many new examples, ranging from physics, biology, and engineering to data compression and web search Contains real (not psuedocode) implementations, with detailed performance insights
Les mer
Many powerful new algorithms A broader perspective with more science and engineering applications New illustrations and examples throughout An attractive new two-color design A companion web site, algs4.cs.princeton.edu , with many more resources for instructors, including text digests, program code, test data, programming projects, exercises, lecture slides, and other resources
Les mer

Produktdetaljer

ISBN
9780321573513
Publisert
2011-03-31
Utgave
4. utgave
Utgiver
Vendor
Addison-Wesley Educational Publishers Inc
Vekt
1620 gr
Høyde
234 mm
Bredde
188 mm
Dybde
42 mm
Aldersnivå
P, 06
Språk
Product language
Engelsk
Format
Product format
Innbundet
Antall sider
976

Biographical note

Robert Sedgewick has been a Professor of Computer Science at Princeton University since 1985, where he was the founding Chairman of the Department of Computer Science. He has held visiting research positions at Xerox PARC, Institute for Defense Analyses, and INRIA, and is member of the board of directors of Adobe Systems. Professor Sedgewick’s research interests include analytic combinatorics, design and analysis of data structures and algorithms, and program visualization. His landmark book, Algorithms, now in its fourth edition, has appeared in numerous versions and languages over the past thirty years. In addition, with Kevin Wayne, he is the coauthor of the highly acclaimed textbook, Introduction to Programming in Java: An Interdisciplinary Approach (Addison-Wesley, 2008).

 

Kevin Wayne is the Phillip Y. Goldman Senior Lecturer in Computer Science at Princeton University, where he has been teaching since 1998. He received a Ph.D. in operations research and industrial engineering from Cornell University. His research interests include the design, analysis, and implementation of algorithms, especially for graphs and discrete optimization. With Robert Sedgewick, he is the coauthor of the highly acclaimed textbook, Introduction to Programming in Java: An Interdisciplinary Approach (Addison-Wesley, 2008).