Data Structures and Algorithms Using Python
December 2010, ©2011
Chapter 1: Abstract Data Types.
1.2 The Date Abstract Data Type.
1.5 Application: Student Records.
Chapter 2: Arrays.
2.1 The Array Structure.
2.2 The Python List.
2.3 Two-Dimensional Arrays.
2.4 The Matrix Abstract Data Type.
2.5 Application: The Game of Life.
Chapter 3: Sets and Maps.
3.3 Multi-Dimensional Arrays.
3.4 Application: Sales Reports.
Chapter 4: Algorithm Analysis.
4.1 Complexity Analysis.
4.2 Evaluating the Python List.
4.3 Amortized Cost.
4.4 Evaluating the Set ADT.
4.5 Application: The Sparse Matrix.
Chapter 5: Searching and Sorting.
5.3 Working with Sorted Lists.
5.4 The Set ADT Revisited.
Chapter 6: Linked Structures.
6.2 The Singly Linked List.
6.3 The Bag ADT Revisited.
6.4 More Ways to Build a Linked List.
6.5 The Sparse Matrix Revisited.
6.6 Application: Polynomials.
Chapter 7: Stacks.
7.1 The Stack ADT.
7.2 Implementing the Stack.
7.3 Stack Applications.
7.4 Application: Solving a Maze.
Chapter 8: Queues.
8.1 The Queue ADT.
8.2 Implementing the Queue.
8.3 Priority Queues.
8.4 Application: Computer Simulations.
Chapter 9: Advanced Linked Lists.
9.1 The Doubly Linked List.
9.2 The Circular Linked List.
9.3 Multi-Linked Lists.
9.4 Complex Iterators.
9.5 Application: Text Editor.
Chapter 10: Recursion.
10.1 Recursive Functions.
10.2 Properties of Recursion.
10.3 How Recursion Works.
10.4 Recursive Applications.
10.5 Application: The Eight-Queens Problem.
Chapter 11: Hash Tables.
11.3 Separate Chaining.
11.4 Hash Functions.
11.5 The HashMap Abstract Data Type.
11.6 Application: Histograms.
Chapter 12: Advanced Sorting.
12.1 Merge Sort.
12.2 Quick Sort.
12.3 How Fast Can We Sort?
12.4 Radix Sort.
12.5 Sorting Linked Lists.
Chapter 13: Binary Trees.
13.1 The Tree Structure.
13.2 The Binary Tree.
13.3 Expression Trees.
13.6 Application: Morse Code.
Chapter 14: Search Trees.
14.1 The Binary Search Tree.
14.2 Search Tree Iterators.
14.3 AVL Trees.
14.4 The 2-3 Tree.
Appendix A Python Review.
A.1 The Python Interpreter.
A.2 The Basics of Python.
A.3 User Interaction.
A.4 Control Structures.
A.6 Text Files.
A.7 User-Defined Functions.
Appendix B User-Defined Modules.
B.1 Structured Programs.
Appendix C Exceptions.
C.1 Catching Exceptions.
C.2 Raising Exceptions.
C.3 Standard Exceptions.
Appendix D Classes.
D.1 The Class Definition.
D.2 Overloading Operators.
- Provides complete coverage of abstraction and the basic data structures and algorithms using a back to basics approach.
- Python (version 3) used to design and implement classes for abstract data types and programs and algorithms.
- Flexible organization allows coverage of class inheritance as needed or desired.
- Introduces students to the basic array structure and the fundamentals of implementing and using multi-dimensional arrays.
- The underlying mechanism of many of Python's built-in data structures and constructs are explored in order to expose the magic and to evaluate their efficiency.
- Real-world applications of various chapter topics are presented throughout the text to help engage students.
- A number of ADTs and applications are presented as threads throughout the text (i.e. the Set, Bag, Matrix, Sparse Matrix, and Map ADTs.) This allows for multiple implementations as new data structures are introduced, which provides the opportunity to reinforce the abstraction concept and for studying algorithm efficiency.
- Wiley E-Texts are powered by VitalSource and accessed via the VitalSource Bookshelf reader, available online and via a downloadable app.
- Wiley E-Texts are accessible online and offline, and can be read on a variety of devices, including smartphones and tablets.
- Wiley E-Texts are non-returnable and non-refundable.
- Wiley E-Texts are protected by DRM. For specific DRM policies, please refer to our FAQ.
- WileyPLUS registration codes are NOT included with any Wiley E-Text. For informationon WileyPLUS, click here .
- To learn more about Wiley E-Texts, please refer to our FAQ.
- E-books are offered as e-Pubs or PDFs. To download and read them, users must install Adobe Digital Editions (ADE) on their PC.
- E-books have DRM protection on them, which means only the person who purchases and downloads the e-book can access it.
- E-books are non-returnable and non-refundable.
- To learn more about our e-books, please refer to our FAQ.