Introduction to algorithms (3rd)

Source: Internet
Author: User

Introduction to algorithms (3rd)
Basic Information
Author: (US) Thomas H. cormen Charles E. leiserson Ronald L. Rivest Clifford Stein
Translator: Wang gangmin, Yin Jianping, Wang Hongzhi
Press: Machinery Industry Press ISBN: 9787111407010
Mounting time:
Published on: February 1, January 2013
Start: 16
Page number: 1
Version: 1-1
Category: Computer> Computer science theory and basic knowledge> computing theory> Algorithm

For more information, Introduction to algorithms (source book version 3rd)
Introduction
Books
Computer books
There are some rigorous but not comprehensive descriptions in the relevant algorithms; others involve a large number of subjects, but lack rigor. This book integrates rigor and comprehensiveness, discusses various algorithms in depth, and strives to make the design and analysis of these algorithms acceptable to readers at all levels. The chapters in this book are self-contained and can be used as independent learning units. algorithms are described in English and pseudocode, and people with preliminary programming experience can understand them. instructions and explanations strive to be easy to understand, without losing its depth and rigor in mathematics. The introduction to algorithms (3rd edition of the original book) selects classic materials, rich content, reasonable structure, and clear logic. It is a very practical teaching material for undergraduate data structure courses and graduate algorithm courses, in the career of IT professionals, this book is also a reference book or Engineering Practice Manual necessary for the case.
Major changes in the 3rd version:
Added the van emde boas tree and multithreading algorithm, and moved the matrix base to the appendix.
This chapter revised the recursive formula (now called the "divide and conquer policy") to cover the divide and conquer law more extensively.
Remove the two chapters that are rarely taught: Two heap and sorting network.
The Dynamic Programming and greedy algorithm contents were revised.
Stream network-related materials are now based on all the streams on the edge.
As materials about the Matrix basics and the strassen algorithm are moved to other chapters, the content of the chapter matrix operations takes less space.
Modified the discussion on the knuth-Morris-Pratt string matching algorithm.
100 exercises and 28 questions were added, and references were also updated.
Directory
Introduction to algorithms (3rd)
Publisher's words
Translator's preface
Preface
Part 1 Basic Knowledge
Chapter 3 Functions of algorithms in computing 3
1.1 algorithm 3
1.2 As a technical algorithm 6
Question 8 Note 8
Chapter 9 algorithm Basics
2.1 Insert sort 9
2.2 analysis algorithm 13
2.3 design algorithm 16
2.3.1 division and Control Law 16
2.3.2 Analysis of divide and conquer algorithm 20
Question 22
Note 24 of this Chapter
Chapter 1 function increase by 25
3.1 accesskey 25
3.2 standard mark and common functions 30
Question 35 Note 36
Chapter 1 Governance Policy 37
4.1 maximum subarray problem 38
4.2 strassen Algorithm for matrix multiplication 43
4.3 Use The Substitution Method to Solve recursive type 47
4.4 use the recursive tree method to solve the recursive formula 50
4.5 using the main method for solving recursive type 53
4.6 proving the Main Theorem 55
4.6.1 primary theorem 56 for power proof of B
4.6.2 rounded down and rounded up 58
Question 60
Note 62
Chapter 1 probability analysis and random algorithm 65
5.1 employment issues 65
5.2 indicator random variable 67
5.3 random algorithm 69
5.4 Further use of probability analysis and indicator random variables 73
5.4.1 birthday paradox 73
5.4.2 ball and box 75
5.4.3 feature sequence 76
5.4.4 online employment 78
Question 79
Note 80 in this Chapter
Part 2 sorting and Order Statistics
Chapter 4 heap sorting 84
6.1 heap 84
6.2 maintain the nature of the heap 85
6.3 heap building 87
6.4 heap Sorting Algorithm 89
6.5 priority queue 90
Question 93
Note 94 of this Chapter
Chapter 4 quick sorting 95
7.1 description of fast sorting 95
7.2 performance of fast sorting 97
7.3 randomization version of quick sorting 100
7.4 Quick Sort Analysis 101
7.4.1 worst case analysis 101
7.4.2 expected runtime: 101
Thinking question 103
Note 106
Chapter 2 linear time sorting 8th
8.1 lower bound of sorting algorithms 107
8.2 count sort 108
8.3 base sorting 110
8.4 bucket sorting 112
Thinking question 114
Note 118
Chapter 1 median and sequence statistics 9th
9.1 min and Max 119
9.2 expected Linear Time Selection Algorithm 120
9.3 worst case is linear time selection algorithm 123
Thinking question 125
Note 126
Part 3 Data Structure
Chapter 2 Basic Data Structure 10th
10.1 stack and queue 129
10.2 linked list 131
10.3 Implementation of pointers and objects 134
10.4 indicates 137 with a root tree
Thinking question 139
Note 141
Chapter 2 hash 11th
11.1 direct addressing Table 142
11.2 hash 143
11.3 hash function 147
11.3.1 division hash 147
11.3.2 multiplication hash method 148
11.3.3 global hash method 148
11.4 open addressing method 151
11.5 full hash 156
Thinking question 158
Note 160
Chapter 2 binary search tree 12th
12.1 what is a binary search tree 161
12.2 query Binary Search Tree 163
12.3 insert and delete 165
12.4 Random Binary Search Tree construction 169
Thinking question 171
Note 173
Chapter 2 red/black tree 13th
13.1 properties of red/black trees 174
13.2 rotate 176
13.3 insert 178
13.4 Delete 183
Thinking question 187
Note 191
Chapter 4 Data Structure expansion 14th
14.1 dynamic sequence statistics 193
14.2 how to expand the data structure 196
14.3 Interval Tree 198
Thinking question 202
Note 202
Part 4 Advanced Design and Analysis Technology
Chapter 2 dynamic planning 15th
15.1 steel strip cutting 204
15.2 matrix chain multiplication 210
15.3 dynamic planning principle 215
15.4 longest public subsequence 222
15.5 optimal binary search tree 226
Question 231 Note of this chapter 236
Chapter 2 greedy algorithm 16th
16.1 activity selection question 237
16.2 greedy algorithm principle 242
16.3 khman encoding 245
16.4 quasi-array and greedy algorithm 250
16.5 solving Task Scheduling Problems with quasi-arrays 253
Thinking question 255
Note 257
Chapter 4 Analysis of stock sharing 17th
17.1 aggregation analysis 258
17.2 accounting method 261
17.3 Potential Energy Method 262
17.4 dynamic table 264
17.4.1 table expansion 265
17.4.2 table expansion and contraction 267
Thinking question 270
Note 273
Part 5 advanced data structure
Chapter 2 B-tree 18th
18.1 B-tree definition 279
18.2 basic operations on Tree B 281
18.3 Delete the keyword 286 from Tree B
Question 288 note of this chapter 289
Chapter 2 Fibonacci heap 19th
19.1 Fibonacci Heap Structure 291
19.2 merge heap operations 292
19.3 keyword impairment and deletion of a node 298
19.4 The limit of the maximum degree is 300
Thinking question 302
Note 305
Chapter 2 Van emde boas tree 20th
20.1 basic method 306
20.2 recursive structure 308
Article 2.1 Structure of the van emde boas prototype 310
Operation 311 on the structure of the van emde boas prototype
20.3 van emde boas tree and its operations 314
4.1.3.1 van emde boas tree 315
Operation 317 of Van emde boas tree
Thinking question 322
Note 323
Chapter 1 data structure for non-intersecting sets 21st
21.1 operations on non-intersecting sets 324
21.2 The linked list of a non-intersecting set represents 326
21.3 non-Intersecting collection forest 328
* 21.4 Analysis of merge by rank with path compression 331
Thinking question 336
Note 337
Part 6 Graph Algorithm
Chapter 2 basic graph algorithms 22nd
22.1 figure 341
22.2 breadth-first search 343
22.3 deep Priority Search 349
22.4 Topology Sorting 355
22.5 strongly connected component 357
Thinking question 360
Note 361
Chapter 1 Minimum Spanning Tree 23rd
23.1 Minimum Spanning Tree formation 362
23.2 Kruskal algorithm and prim algorithm 366
Question 370 note of this Chapter 373
Chapter 2 single-source shortest path 24th
24.1 bellmanford algorithm 379
24.2 single-source shortest path in a directed acyclic graph 381
24.3 Dijkstra algorithm 383
24.4 difference constraint and shortest path 387
24.5 proof of Shortest Path 391
Thinking question 395
Note 398
Chapter 1 Shortest Path of all node pairs 25th
25.1 Shortest Path and matrix multiplication 400
25.2 floydwarshall algorithm 404
25.3 Johnson Algorithm for sparse graphs 409
Question 412 note of this chapter 412
Chapter 5 maximum stream 26th
26.1 stream network 414
26.2 fordfulkerson method 418
26.3 maximum binary match 428
26.4 push re-labeling algorithm 431
26.5 pre-labeling algorithm 438
Thinking question 446
Note 449
Part 7 algorithm Issue Selection
Chapter 2 multi-thread algorithm 27th
27.1 dynamic multithreading basics 454
27.2 multi-threaded matrix multiplication 465
27.3 multi-threaded Merge Sorting 468
Thinking question 472
Note 476
Chapter 2 matrix operations 28th
28.1 Solving Linear Equations 478
28.2 matrix inverse 486
28.3 symmetric positive definite matrix and Least Square approximation 489
Thinking question 493
Note 494
Chapter 1 linear programming 29th
29.1 standard and relaxed 499
29.2 express the problem as linear programming 504
29.3 SIMPLE algorithm 507
29.4 parity 516
29.5 Initial Basic Feasible Solution 520
Thinking question 525
Note 526
Chapter 2 polynomial and Fast Fourier transformation 30th
30.1 polynomial representation 528
30.2 DFT and fft531
30.3 Efficient FFT Implementation 536
Thinking question 539
Note 541
Chapter 2 number theory algorithm 31st
31.1 basic number theory concept 543
31.2 Max. approx. 547
31.3 modulo operation 550
31.4 solving model linear equations 554
31.5 China Remainder Theorem 556
31.6 element power 558
31.7 RSA public key encryption system 561
31.8 testing of prime numbers 565
31.9 integer factorization 571
Question 574 note of this Chapter 576
Chapter 2 string matching 32nd
32.1 simple string matching algorithm 578
32.2 rabinkarp algorithm 580
32.3 use finite automaton for string matching 583
32.4 knuthmorrispratt algorithm 588
Thinking question 594
Note 594
Chapter 2 computational geometry 33rd
33.1 The nature of a line segment 595
33.2 determine whether any one of the line segments intersection 599
33.3 finding a convex bag 604
33.4 search for the latest point 610
Thinking question 613
Note 615
Chapter 2 NP completeness 34th
34.1 polynomial time 619
34.2 polynomial time verification 623
34.3 NP completeness and reduction 626
34.4 proof of NP completeness 633
34.5 NP complete problems 638
34.5.1 mission question 638
34.5.2 vertex coverage problem 640
34.5.3 Hamilton circuit problem 641
34.5.4 Traveling Salesman Problem 644
34.5.5 subset and issue 645
Thinking question 647
Note 649
Chapter 1 approximation algorithms 35th
35.1 vertex coverage problems 652
35.2 Traveling Salesman Problem 654
35.2.1 Traveling Salesman Problem satisfying triangular inequality 654
35.2.2 General Traveling Salesman Problem 656
35.3 set coverage problems 658
35.4 randomization and linear programming 661
35.5 subset and question 663
Thinking question 667
Note 669
Part 8 Appendix: basic mathematical knowledge
Appendix A sum 672
A.1 summation formula and Its Properties 672
A.2 determine the sum Time Limit of 674
Question 678 appendix note 678
Appendix B sets and other Discrete Mathematical content 679
B .1 set 679
B .2 relationship 682
B .3 function 683
B .4 figure 685
B .5 tree 687
B .5.1 Freedom Tree 688
B .5.2 root and ordered trees 689
B .5.3 binary tree and location tree 690
Thinking question 691
Appendix note 692
Appendix C counting and probability 693
C.1 count 693
C.2 probability 696
C.3 Discrete Random Variable 700
C.4 geometric distribution and binary distribution 702
* C.5 tail of the two distributions: 705
Thinking question 708
Appendix note 708
Appendix D matrix 709
D.1 matrix and matrix operations 709
Basic Nature of D.2 matrix 712
Thinking question 714
Appendix note 715
References 716
Index 732

Source of this book: China Interactive publishing network

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.