## Video description

Learn how to make your Python code more efficient by using algorithms to solve a variety of tasks or computational problems. In this video course, you’ll learn algorithm basics and then tackle a series of problems—such as determining the shortest path through a graph and the minimum edit distance between two genomic sequences—using existing algorithms.

Computer scientist George Heineman fully implements each algorithm from scratch in real time, narrating key concepts and steps along the way, and then demonstrates the execution performance of the algorithm implementations on the model problems.

Algorithms are essential to the way computers process data. The examples you’ll learn in this course are among the most common algorithms in computer science, but they illustrate many of the concerns you’ll face as you work to create algorithms on your own. All code is available on GitHub (https://github.com/heineman/python-algorithms).

The topics in this video course include:

- Just enough mathematical concepts to understand how to analyze algorithms
- Practical advice to identify code inefficiencies, using algorithm analysis
- A description of fundamental data structures (such as binary trees, heaps, and graphs) and their use in efficient algorithms
- Problem-solving strategies, including Divide and Conquer, Dynamic Programming, Greedy, and Brute Force approaches
- Full implementations of each algorithm in Python within the context of a specific problem
- A description of the most common algorithmic families, including constant-time, logarithmic time, linear time, polynomial time, and exponential time

George T. Heineman is an Associate Professor of Computer Science at Worcester Polytechnic Institute in Massachusetts.

## Publisher resources

## Product information

- Title: Working with Algorithms in Python
- Author(s):
- Release date: July 2014
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781491907801

## You might also like

book

### 40 Algorithms Every Programmer Should Know

Learn algorithms for solving classic computer science problems with this concise guide covering everything from fundamental …

video

### Algorithms in Motion

"Good and simple to understand introduction to algorithms." Boris Vasile, Team Lead, Garmin Cluj Algorithms - …

video

### Designing Data Structures in Python

When should you use Python’s built-in data types, and when should you develop your own? In …

video

### Modern Python LiveLessons: Big Ideas and Little Code in Python

Overview Modern Python LiveLessons: Big Ideas and Little Code in Python provides developers with an approach …