Turing Programming Series Algorithm (4th edition) PDF

Source: Internet
Author: User

: Network Disk Download

Content Introduction· · · · · ·

This book comprehensively describes the algorithms and data structures necessary knowledge, with the following major features.

? A classic reference book in the field of algorithms

The latest version of Sedgewick's best-selling book reflects the core knowledge system of algorithms that evolved over several decades

? Comprehensive content

Comprehensive discussion of algorithms and data structures for sorting, searching, graph processing, and string processing, covering 50 algorithms per programmer haulage

? The newly Revised Code

New Java implementation code with modular programming style, all code available to readers

? Combined with practical applications

Explore algorithms in important scientific, engineering, and commercial applications, and give the actual code of the algorithm, rather than the pseudo-code commonly used in similar writings

? Be rich in intellectual interest

Concise content, examples with rich visual elements, well-designed code, detailed historical and scientific background knowledge, various difficulty exercises, all of which will make the reader Shoubushijuan

? A scientific approach

Accurately discuss algorithmic performance with appropriate mathematical models that are validated in real-world environments

? Combined with the network

Supporting website Algs4.cs.princeton.edu provides a summary of the contents of this book and related code, test data, programming exercises, teaching courseware and other resources

Author profile ...

Robert Sedgewick Stanford University, a mentor for Donald E. Knuth, has been a professor of computer science at Princeton University since 1985, a former director of the Department and a board member of the Adobe Systems Company, who has worked at Xerox PARC, The Institute of Defense Analysis (Institute for Defense analyses) and the French National Institute for Information and Automation (INRIA) are engaged in research. His research interests include analytic composition, analysis and design of data structures and algorithms, and visualization of programs.

Kevin Wayne Cornell, PhD, senior Lecturer, Department of Computer Science, Princeton University, research interests include algorithm design, analysis and implementation, especially graph and discrete optimization.

Catalog/Directory
The 1th Chapter Basic 1
1.1 BASIC Programming Model 4
1.1.1 Basic structure of Java programs 4
1.1.2 Raw data types and expressions 6
1.1.3 Statement 8
1.1.4 Easy Notation 9
1.1.5 Array 10
1.1.6 static Method 12
1.1.7 API 16
1.1.8 String 20
1.1.9 Input/Output 21
1.1.102 Points Find 28
1.1.11 Outlook 30
1.2 Data Abstraction 38
1.2.1 Using abstract data Type 38
1.2.2 Abstract Data Type Example 45
1.2.3 implementation of abstract data types 52
1.2.4 more implementations of abstract data types 55
1.2.5 design of data types 60
1.3 Backpacks, queues, and stacks 74
1.3.1 API 74
1.3.2 implementation of the collection class data type 81
1.3.3 Linked list 89
1.3.4 Overview 98
1.4 Algorithm Analysis 108
1.4.1 Scientific Method 108
1.4.2 Observation 108
1.4.3 Mathematical Model 112
1.4.4 growth order of magnitude category 117
1.4.5 design for faster algorithms 118
1.4.6 times times the rate experiment 121
1.4.7 Precautions 123
1.4.8 processing for input dependency 124
1.4.9 Memory 126
1.4.10 Outlook 129
1.5 Case Study: Union-find algorithm 136
1.5.1 Dynamic Connectivity 136
1.5.2 Implementation 140
1.5.3 Outlook 148
2nd Chapter Sort 152
2.1 Primary Sorting algorithm 153
2.1.1 Game Rules 153
2.1.2 Select Sort 155
2.1.3 Insert Sort 157
Visualization of the 2.1.4 sorting algorithm 159
2.1.5 Comparison of two sorting algorithms 159
2.1.6 Hill Sort 162
2.2 Merge Sort 170
2.2.1 Abstract method of in-situ merging 170
2.2.2 Top-down merge sort 171
2.2.3 Bottom-up merge sort 175
Complexity of the 2.2.4 sorting algorithm 177
2.3 Quick Sort 182
2.3.1 Basic Algorithm 182
2.3.2 Performance Features 185
2.3.3 Algorithm Improvement 187
2.4 Priority Queue 195
2.4.1 API 195
2.4.2 Primary Implementation 197
Definition of 2.4.3 Heap 198
Algorithm for 2.4.4 Heap 199
2.4.5 Heap Sort 205
2.5 Application 214
2.5.1 sorting various Data 214
2.5.2 What sort algorithm should I use 218
2.5.3 about 219 of the problem
2.5.4 Sort Applications List 221
3rd Chapter Find 227
3.1 Symbol Table 228
3.1.1 API 228
3.1.2 Ordered symbol Table 230
3.1.3 Use case Example 233
3.1.4 Order lookup in unordered list 235
3.1.5 Binary lookup in an ordered array 238
3.1.6 analysis of two-part search 242
3.1.7 Preview 244
3.2 Two fork Find tree 250
3.2.1 Basic Implementation 250
3.2.2 Analysis 255
3.2.3 methods related to ordering and deleting operations 257
3.3 Balancing the Find tree 269
3.3.1 2-3 Find Tree 269
3.3.2 Red and Black binary search tree 275
3.3.3 Implementation 280
3.3.4 Delete Operation 282
3.3.5 nature of red and black trees 284
3.4 Hash Table 293
3.4.1 Hash Function 293
3.4.2 based on the zipper method of the hash table 297
3.4.3 Hash table based on the linear detection method 300
3.4.4 Resizing an array 304
3.4.5 Memory Usage 306
3.5 Application 312
3.5.1 What kind of implementation should I use the symbol table 312
API 313 for 3.5.2 Collection
3.5.3 Dictionary class use case 315
3.5.4 Index class use case 318
3.5.5 Sparse Vector 322
The 4th Chapter Figure 329
4.1 Non-direction figure 331
4.1.1 Glossary 331
4.1.2 represents the data type of an untyped graph 333
4.1.3 Depth First Search 338
4.1.4 Finding Path 342
4.1.5 Breadth First Search 344
4.1.6 Connected Components 349
4.1.7 Symbol Figure 352
4.1.8 Summary 358
4.2 Direction Diagram 364
4.2.1 Terminology 364
4.2.2 data type of the graph 365
4.2.3 Accessibility in a graph to 367
4.2.4 Ring and direction-free loop fig. 369
Strong connectivity in 4.2.5 graphs 378
4.2.6 Summary 385
4.3 Minimum spanning Tree 390
4.3.1 principle 391
4.3.2 Weighted non-graph data type 393
4.3.3 The minimum spanning tree API and test case 396
4.3.4 Prim algorithm 398
Instant implementation of the 4.3.5 prim algorithm 401
4.3.6 Kruskal algorithm 404
4.3.7 Outlook 407
4.4 Shortest Path 412
4.4.1 Properties of Shortest Path 413
4.4.2 Weighted graph data Structure 414
Theoretical basis of 4.4.3 shortest path algorithm 420
4.4.4 Dijkstra Algorithm 421
The shortest path algorithm in 4.4.5 weighted graph with no ring 425
4.4.6 the shortest path problem in general weighted graphs 433
4.4.7 Outlook 445
5th Chapter String 451
5.1 String Sort 455
5.1.1 Key Index Counting method 455
5.1.2 Low-priority string sort 458
5.1.3 High-priority string sort 461
5.1.43 Quick Sort to string 467
5.1.5 selection of string sorting algorithms 470
5.2 Word Lookup Tree 474
5.2.1 Word Lookup Tree 475
5.2.2 The nature of the word search Tree 483
5.2.33 to find the word tree 485
5.2.43 The nature of the word lookup tree 487
5.2.5 which implementation of the string symbol table should be used 489
5.3 Substring Lookup 493
5.3.1 History Introduction 493
5.3.2 Brute force substring search algorithm 494
5.3.3 Knuth-morris-pratt substring Lookup algorithm 496
5.3.4 Boyer-moore String Lookup algorithm 502
5.3.5 rabin-karp fingerprint string lookup algorithm 505
5.3.6 Summary 509
5.4 Regular Expressions 514
5.4.1 using regular expressions to describe patterns 514
5.4.2 thumbnail notation 516
Practical application of 5.4.3 regular expressions 517
5.4.4 non-deterministic finite state automata 518
5.4.5 Simulation of NFA Operation 520
The 5.4.6 structure corresponds to the regular expression.
5.5 Data Compression 529
5.5.1 Game Rules 529
5.5.2 Read and write binary data 530
5.5.3 Limitation 533
5.5.4 warm-up exercise: genome 534
5.5.5 run-Length code 537
5.5.6 Hoffman Compression 540
Chapter 6th Background 558
Index 611

: Network Disk Download

Turing Programming Series Algorithm (4th edition) PDF

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.