: Network Disk Download
Content Introduction· · · · · ·
This book is a classic textbook on data structures and algorithmic analysis in foreign countries, using the excellent Java programming language as the implementation tool to discuss data structures (methods for organizing large amounts of data) and algorithmic analysis (estimation of algorithm run time). With the increasing speed of computers and the increasingly powerful functions, the requirements for effective programming and algorithmic analysis are increasing. This book combines algorithmic analysis with the development of the most efficient Java programs, in-depth analysis of each algorithm, comprehensive, rigorous, and meticulous elaboration of the method of construction procedures.
Author profile ...
Markallen Weiss holds a PhD in computer science from Princeton University and is now a professor at the Florida International University School of Computing. He is a famous computer education expert, in the data structure and algorithm analysis of achievements, there are a number of best-selling books: "Data structures and problem SOLVING:LJSIRLG, Java", "Data structures and Problem solving:using C + +, "Data structure and algorithm analysis--c language description" and so on. He is currently a member of the AP (advancedplacement) Computer Discipline Committee.
Catalogue/Translator Sequence
Objective
Introduction to the 1th Chapter
1.1 What the book discusses
1.2 Review of mathematical knowledge
1.2.1 Index
1.2.2 Logarithm
1.2.3-level number
1.2.4 modulo operation
The method of 1.2.5 proof
A brief discussion on recursion of 1.3
1.4 Implementing a generic feature widget Pre-java5
1.4.1 using object to represent generics
1.4.2 Basic types of packaging
1.4.3 using an interface type to represent generics
1.4.4 compatibility of array types
1.5 using JAVA5 generics to achieve generic attribute composition
1.5.1 simple generic classes and interfaces
1.5.2 Automatic box packing/unpacking
1.5.3 Wildcard with restrictions
1.5.4 Generic static method
1.5.5 Type Gauge
1.5.6 Type Erase
1.5.7 restrictions on generics
1.6 Function objects
Summary
Practice
Reference documents
The 2nd Chapter algorithm analysis
2.1 Fundamentals of Mathematics
2.2 Models
2.3 Issues to analyze
2.4 Run Time Calculation
2.4.1 A simple example
2.4.2 General Law
2.4.3 Maximal sub-sequences and solving problems
2.4.4 logarithm in run time
2.4.5 Test your analysis.
Accuracy of 2.4.6 analysis results
Summary
Practice
Reference documents
3rd chapter tables, stacks, and queues
3.1 Abstract data types
3.2 Table ADT
A simple array implementation of the 3.2.1 table
3.2.2 Simple Linked List
3.3 Tables in the Java collections API
3.3.1 Collection Interface
3.3.2 Iterator interface
3.3.3 List interface, ArrayList class, and LinkedList class
3.3.4 cases: Use of the Remove method for the LinkedList class
3.3.5 about Listiterator Interface
Implementation of 3.4 ArrayList class
3.4.1 Basic Class
3.4.2 Iterators, Java nested classes, and inner classes
Implementation of the 3.5 Linked list class
3.6 Stack ADT
3.6.1 Stack Model
Implementation of 3.6.2 Stack
3.6.3 applications
3.7 Queue ADT
3.7.1 Queue Model
An array implementation of the 3.7.2 queue
Application of 3.7.3 queue
Summary
Practice
4th Chapter Tree
4.1 Preliminary knowledge
The realization of 4.1.1 Tree
The traversal and application of 4.1.2 Tree
4.2 Two fork Tree
4.2.1 implementation
4.2.2 Example: Expression tree
4.3 Find tree adt--two fork find tree
4.3.1 contains method
4.3.2 Findmin Method and Findmax method
4.3.3 Insert Method
4.3.4 Remove method
Analysis on average situation of 4.3.5
4.4 AVL Tree
4.4.1 Single Rotation
4.4.2 Double Rotation
4.5 Stretching trees
4.5.1 A simple idea (cannot be used directly)
4.5.2 Expand
4.6 Traversal of the tree
4.7 B-Tree
4.8 Collections and mappings in the standard library
4.8.1 about the Set interface
4.8.2 about the Map interface
Implementation of 4.8.3 TreeSet class and TreeMap class
Examples of 4.8.4 using multiple mappings
Summary
Practice
Reference documents
5th Chapter Hash
5.1 General Ideas
5.2 Hash function
5.3 Separate Link method
5.4 Hash table without a linked list
5.4.1 Linear detection method
5.4.2 square Probe method
5.4.3 Double Hash
5.5 Re-hash
5.6 Hash table in the standard library
5.7 Diffuser Column
Summary
Practice
Reference documents
6th Priority Queue (heap)
6.1 Models
6.2 Some simple implementations
6.3 Two fork Pile
6.3.1 Structural Properties
6.3.2 Sequence Properties
6.3.3 Basic Heap Operations
6.3.4 Other heap operations
6.4 Application of Priority queue
6.4.1 Selection Questions
6.4.2 Event Simulation
6.5 D-Heap
6.6 Left-hand heap
6.6.1 left-Pile properties
6.6.2 left-Hand heap operation
6.7 Oblique Heap
6.8 Two items queue
6.8.12 Queue Structure
6.8.22 Queue Operations
6.8. Implementation of 32 queues
6.9 Priority queues in the standard library
Summary
Practice
Reference documents
7th Chapter Sort
7.1 Preliminary knowledge
7.2 Insert Sort
7.2.1 algorithm
Analysis of 7.2.2 Insertion sort
7.3 Lower bounds for some simple sorting algorithms
7.4 Hill Sort
7.5 Heap Sorting
7.6 Merge Sort
7.7 Quick Sort
7.7.1 Select Pivot Element
7.7.2 Segmentation Strategy
7.7.3 Decimal Group
7.7.4 The actual quick sort routines
Analysis of 7.7.5 fast sorting
Linear expectation time algorithm for 7.7.6 selection problem
7.8 General lower bounds for sorting algorithms
7.9 barrel Sequencing
7.10 External sorting
7.10.1 Why need some new algorithms
7.10.2 External Ordering model
7.10.3 Simple algorithm
7.10.4-Way Merge
7.10. More than 5 in consistency and
7.10.6 Replace Selection
Summary
Exercises
Reference documents
8th Chapter Disjoint Set class
8.1 Equivalence relation
8.2 Dynamic equivalence problems
8.3 Basic Data structures
8.4 dexterous algorithm
8.5 path compression
8.6 Path compression and worst-case scenario by rank
8.7 an application
Summary
Exercises
Reference documents
The 9th Chapter graph theory algorithm
9.1 Some definitions
9.2 topology Sequencing
9.3 Shortest Path algorithm
9.3.1 Not authorized Shortest path
9.3.2 Dijkstra algorithm
9.3.3 graphs with negative boundary values
9.3.4 No circle diagram
9.3.5 all point-to-shortest paths
Example of 9.3.6 Shortest path
9.4 Network flow problems
9.5 Minimum Spanning Tree
9.5.1 Prim algorithm
9.5.2 Kruskal algorithm
9.6 Application of Depth-first search
9.6.1 Non-direction diagram
9.6.2 Dual Connectivity
9.6.3 Euler circuit
9.6.4 graph
9.6.5 Finding strong branches
9.7 Introduction of NP completeness
9.7.1 Difficult and easy
9.7.2 NP Class
9.7.3 NP Complete problem
Summary
Practice
Reference documents
The 10th chapter algorithm design Skill
10.1 Greedy algorithm
10.1.1 a simple scheduling problem
10.1.2 Huffman Code
10.1.3 Approximate boxing problem
10.2 Divide-and-conquer algorithm
The running time of 10.2.1 divide and conquer algorithm
10.2.2 Recent Point issues
10.2.3 Selection Questions
10.2.4 some theoretical improvements in arithmetic problems
10.3 Dynamic Planning
10.3.1 using a table instead of recursion
Sequential arrangement of 10.3.2 matrix multiplication
10.3.3 Optimal binary search tree
10.3.4 all point-to-shortest paths
10.4 randomization algorithm
10.4.1 Random number generator
10.4.2 Jumping table
10.4.3 primality test
10.5 Backtracking algorithm
Reconstruction of 10.5.1 Toll road
10.5.2 Game
Summary
Practice
Reference documents
The 11th chapter of the amortization also analyses
11.1 An unrelated intellectual problem
11.2 Two items queue
11.3 Oblique Heap
11.4 Fibonacci Heap
11.4.1 resection of nodes in the left-hand heap
11.4. Lazy merger of 22 queues
11.4.3 Fibonacci Stack Operation
11.4.4 Proof of the time bounds
11.5 Stretching trees
Summary
Practice
Reference documents
The 12th chapter advanced data structure and its implementation
12.1 Top Down Stretch tree
12.2 Red and black trees
12.2.1 Bottom-up insertion
12.2.2 top down Red black tree
12.2.3 Top-down deletion
12.3 Deterministic Jump Table
12.4 AA Tree
12.5 treap Tree
12.6 k-d Tree
12.7 pairing Heap
Summary
Practice
Reference documents
Index
: Network Disk Download
Data structure and algorithm analysis--java language description PDF