/traveling-spaceship

Advanced Python learning project about runtime, Big-O, and P vs. NP.

Primary LanguageJupyter NotebookApache License 2.0Apache-2.0

traveling-spaceship

Advanced Python learning project about dynamic programming, Big-O, and P vs. NP.

In this project, you will learn about Big-O notation, P vs. NP, and dynamic programming. For this project, you’ll learn about important concepts related to the TSP.

Difficulty Level: ADVANCED

To understand this project, you should have intermediate experience with Python syntax including:

  • Built-in functions
  • Loops
  • Functions

Mathematical background

  • Familiarity with polynomial and exponential functions.

Analysis of code

  • You should be able to understand, at a basic level, how efficient or fast your program is.

The Story

An interplanetary, famous music band is going on a tour to 20 different asteroids and planets in the solar system, and then returning back to their home planet Earth. There is unfortunately no option to refuel away from Earth, and they can only go 500 billion kilometers on a single tank of rocket fuel.

What you will learn

In this project, you will learn about:

  • The Traveling Spaceship Problem
  • Big-O Notation
  • P vs. NP
  • Dynamic Programming

Links and Resources

https://en.wikipedia.org/wiki/Held%E2%80%93Karp_algorithm https://en.wikipedia.org/wiki/Dynamic_programming https://en.wikipedia.org/wiki/Travelling_salesman_problem

License

Licensed under the Apache License: http://www.apache.org/licenses/LICENSE-2.0