Udacity Logo
Log InJoin for Free
Free

Design of Computer Programs

Course

Learn how to model problems, and how to optimize performance by using some of the advanced features of Python.

Learn how to model problems, and how to optimize performance by using some of the advanced features of Python.

Last Updated March 4, 2022

Prerequisites:

No experience required

Course Lessons

Lesson 1

Lesson 1

Lesson 2

Bonus: Shuffling

Lesson 3

Andy's Corner 1

Lesson 4

Problem Set 1

Lesson 5

Office Hours 1

Lesson 6

Lesson 2

Lesson 7

Problem Set 2

Lesson 8

Office Hours 2

Lesson 9

Lesson 3

Lesson 10

Problem Set 3

Lesson 11

Office Hours 3

Lesson 12

Lesson 4

Lesson 13

Problem Set 4

Lesson 14

Lesson 5

Lesson 15

Problem Set 5

Lesson 16

Office Hours 5

Lesson 17

Python Glossary

Lesson 18

Lesson 6

Lesson 19

Problem Set 6

Lesson 20

Office Hours 6

Lesson 21

Lesson 7

Lesson 22

Practice Exam

Taught By The Best

Photo of Peter Norvig

Peter Norvig

Research Director, Google

Peter Norvig is a Director of Research at Google and is co-author of Artificial Intelligence: A Modern Approach, the leading textbook in the field.

The Udacity Difference

Combine technology training for employees with industry experts, mentors, and projects, for critical thinking that pushes innovation. Our proven upskilling system goes after success—relentlessly.

Demonstrate proficiency with practical projects

Projects are based on real-world scenarios and challenges, allowing you to apply the skills you learn to practical situations, while giving you real hands-on experience.

  • Gain proven experience

  • Retain knowledge longer

  • Apply new skills immediately

Top-tier services to ensure learner success

Reviewers provide timely and constructive feedback on your project submissions, highlighting areas of improvement and offering practical tips to enhance your work.

  • Get help from subject matter experts

  • Learn industry best practices

  • Gain valuable insights and improve your skills