Problem Solving
with Algorithms
and Data Structures
Using Python

Bradley N. Miller & David L. Ranum
Luther College

ISBN 1-59028-053-9, $45.00

SOURCE CODE FOR THE BOOK

 

BUY NOW

Contents

Chapter 1 Introduction

1.1 Objectives
1.2 Getting Started
1.3 What Is Computer Science?
1.4 Review of Basic Python
1.8 Programming Exercises

Chapter 2 Basic Data Structures

2.1 Objectives
2.2 What Are Linear Structures?
2.3 Stacks
2.4 Queues 74
2.5 Deque

Chapter 3 Recursion

3.1 Objectives
3.2 What Is Recursion?
3.3 Stack Frames: Implementing Recursion
3.4 Complex Recursive Problems

Chapter 4 Algorithm Analysis

4.1 Objectives
4.2 What Is Algorithm Analysis?
4.3 Searching
4.4 Sorting

Chapter 5 Trees

5.1 Objectives
5.2 Examples of Trees
5.3 Vocabulary and Definitions
5.4 Implementation
5.5 Binary Tree Applications
5.6 Binary Search Trees
5.7 Priority Queues with Binary Heaps

Chapter 6 Graphs

6.1 Objectives
6.2 Vocabulary and Definitions
6.3 Representation
6.4 Graph Algorithms

Chapter 7 Advanced Topics

7.1 Objectives
7.2 Lists Revisited: Linked Lists
7.3 Recursion Revisited: Dynamic Programming
7.4 Dictionaries Revisited: Skip Lists
7.5 Trees Revisited: Quantizing Images with OctTrees
7.6 Graphs Revisited: Pattern Matching
Appendix A Graphics Packages for Python

Back to Our Catalog