Algorithms in Java, Parts 1-4, Portable Documents

Specificaties
E-book, blz. | Engels
Pearson Education | e druk, 2021
ISBN13: 9780672333712
Rubricering
Juridisch :
Pearson Education e druk, 2021 9780672333712
Verwachte levertijd ongeveer 9 werkdagen

Samenvatting

Sedgewick has a real gift for explaining concepts in a way that makes them easy to understand. The use of real programs in page-size (or less) chunks that can be easily understood is a real plus. The figures, programs, and tables are a significant contribution to the learning experience of the reader; they make this book distinctive.
--William A. Ward, University of South Alabama

This edition of Robert Sedgewick's popular work provides current and comprehensive coverage of important algorithms for Java programmers. Michael Schidlowsky and Sedgewick have developed new Java implementations that both express the methods in a concise and direct manner and provide programmers with the practical means to test them on real applications.

Many new algorithms are presented, and the explanations of each algorithm are much more detailed than in previous editions. A new text design and detailed, innovative figures, with accompanying commentary, greatly enhance the presentation. The third edition retains the successful blend of theory and practice that has made Sedgewick's work an invaluable resource for more than 400,000 programmers!

This particular book, Parts 1-4, represents the essential first half of Sedgewick's complete work. It provides extensive coverage of fundamental data structures and algorithms for sorting, searching, and related applications. Although the substance of the book applies to programming in any language, the implementations by Schidlowsky and Sedgewick also exploit the natural match between Java classes and abstract data type (ADT) implementations.

Highlights Java class implementations of more than 100 important practical algorithms Emphasis on ADTs, modular programming, and object-oriented programming Extensive coverage of arrays, linked lists, trees, and other fundamental data structures Thorough treatment of algorithms for sorting, selection, priority queue ADT implementations, and symbol table ADT implementations (search algorithms) Complete implementations for binomial queues, multiway radix sorting, randomized BSTs, splay trees, skip lists, multiway tries, B trees, extendible hashing, and many other advanced methods Quantitative information about the algorithms that gives you a basis for comparing them More than 1,000 exercises and more than 250 detailed figures to help you learn properties of the algorithms

Whether you are learning the algorithms for the first time or wish to have up-to-date reference material that incorporates new programming styles with classic and new algorithms, you will find a wealth of useful information in this book.

Specificaties

ISBN13:9780672333712
Taal:Engels
Bindwijze:e-book

Inhoudsopgave

<p> I. FUNDAMENTALS. </p> <div style="margin-left: 0.2in;"> 1. Introduction. </div> <br> <p> </p> <div style="margin-left: 0.4in;"> Algorithms. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> A Sample Problem: Connectivity. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Union-Find Algorithms. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Perspective. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Summary of Topics. </div> <p></p> <div style="margin-left: 0.2in;"> 2. Principles of Algorithm Analysis. </div> <br> <p> </p> <div style="margin-left: 0.4in;"> Implementation and Empirical Analysis. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Analysis of Algorithms. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Growth of Functions. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Big-Oh notation. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Basic Recurrences. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Examples of Algorithm Analysis. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Guarantees, Predictions, and Limitations. </div> <p></p> <p> II. DATA STRUCTURES. </p> <div style="margin-left: 0.2in;"> 3. Elementary Data Structures. </div> <br> <p> </p> <div style="margin-left: 0.4in;"> Building Blocks. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Arrays. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Linked Lists. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Elementary List Processing. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Memory Allocation for Lists. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Strings. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Compound Data Structures. </div> <p></p> <div style="margin-left: 0.2in;"> 4. Abstract Data Types. </div> <br> <p> </p> <div style="margin-left: 0.4in;"> Collections of Items. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Pushdown Stack ADT. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Examples of Stack ADT Clients. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Stack ADT Implementations. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Generic Implementations. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Creation of a New ADT. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> FIFO Queues and Generalized Queues. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Duplicate and Index Items. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> First-Class ADTs. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Application-Based ADT Example. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Perspective. </div> <p></p> <div style="margin-left: 0.2in;"> 5. Recursion and Trees. </div> <br> <p> </p> <div style="margin-left: 0.4in;"> Recursive Algorithms. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Divide and Conquer. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Dynamic Programming. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Trees. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Mathematical Properties of Trees. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Tree Traversal. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Recursive Binary-Tree Algorithms. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Graph Traversal. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Perspective. </div> <p></p> <p> III. SORTING. </p> <div style="margin-left: 0.2in;"> 6. Elementary Sorting Methods. </div> <br> <p> </p> <div style="margin-left: 0.4in;"> Rules of the Game. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Generic Sort Implementations. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Selection Sort. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Insertion Sort. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Bubble Sort. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Performance Characteristics of Elementary Sorts. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Algorithm Visualization. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Shellsort. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Sorting Linked Lists. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Key-Indexed Counting. </div> <p></p> <div style="margin-left: 0.2in;"> 7. Quicksort 315. </div> <br> <p> </p> <div style="margin-left: 0.4in;"> The Basic Algorithm. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Performance Characteristics of Quicksort. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Stack Size. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Small Subfiles. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Median-of-Three Partitioning. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Duplicate Keys. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Strings and Vectors. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Selection. </div> <p></p> <div style="margin-left: 0.2in;"> 8. Merging and Mergesort. </div> <br> <p> </p> <div style="margin-left: 0.4in;"> Two-Way Merging. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Abstract In-Place Merge. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Top-Down Mergesort. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Improvements to the Basic Algorithm. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Bottom-Up Mergesort. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Performance Characteristics of Mergesort. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Linked-List Implementations of Mergesort. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Recursion Revisited. </div> <p></p> <div style="margin-left: 0.2in;"> 9. Priority Queues and Heapsort. </div> <br> <p> </p> <div style="margin-left: 0.4in;"> Elementary Implementations. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Heap Data Structure. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Algorithms on Heaps. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Heapsort. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Priority-Queue ADT. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Priority Queues for Index Items. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Binomial Queues. </div> <p></p> <div style="margin-left: 0.2in;"> 10. Radix Sorting. </div> <br> <p> </p> <div style="margin-left: 0.4in;"> Bits, Bytes, and Words. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Binary Quicksort. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> MSD Radix Sort. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Three-Way Radix Quicksort. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> LSD Radix Sort. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Performance Characteristics of Radix Sorts. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Sublinear-Time Sorts. </div> <p></p> <div style="margin-left: 0.2in;"> 11. Special-Purpose Sorts. </div> <br> <p> </p> <div style="margin-left: 0.4in;"> Batcher's Odd-Even Mergesort. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Sorting Networks. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Sorting In Place. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> External Sorting. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Sort-Merge Implementations. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Parallel Sort-Merge. </div> <p></p> <p> IV. SEARCHING. </p> <div style="margin-left: 0.2in;"> 12. Symbol Tables and BSTs. </div> <br> <p> </p> <div style="margin-left: 0.4in;"> Symbol-Table Abstract Data Type. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Key-Indexed Search. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Sequential Search. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Binary Search. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Index Implementations with Symbol Tables. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Binary Search Trees. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Performance Characteristics of BSTs. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Insertion at the Root in BSTs. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> BST Implementations of Other ADT Functions. </div> <p></p> <div style="margin-left: 0.2in;"> 13. Balanced Trees. </div> <br> <p> </p> <div style="margin-left: 0.4in;"> Randomized BSTs. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Splay BSTs. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Top-Down 2-3-4 Trees. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Red-Black Trees. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Skip Lists. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Performance Characteristics. </div> <p></p> <div style="margin-left: 0.2in;"> 14. Hashing. </div> <br> <p> </p> <div style="margin-left: 0.4in;"> Hash Functions. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Separate Chaining. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Linear Probing. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Double Hashing. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Dynamic Hash Tables. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Perspective. </div> <p></p> <div style="margin-left: 0.2in;"> 15. Radix Search. </div> <br> <p> </p> <div style="margin-left: 0.4in;"> Digital Search Trees. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Tries. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Patricia Tries. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Multiway Tries and TSTs. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Text-String-Index Applications. </div> <p></p> <div style="margin-left: 0.2in;"> 16. External Searching. </div> <br> <p> </p> <div style="margin-left: 0.4in;"> Rules of the Game. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Indexed Sequential Access. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> B Trees. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Extendible Hashing. </div> <p></p> <p> </p> <div style="margin-left: 0.4in;"> Perspective. </div> <p></p> <div style="margin-left: 0.2in;"> Appendix. </div> <br> <div style="margin-left: 0.2in;"> Index. 0201361205T06262002 </div> <br>

Net verschenen

Rubrieken

Populaire producten

    Personen

      Trefwoorden

        Algorithms in Java, Parts 1-4, Portable Documents