Chapters (55)
- 0:00Intro & course overview
- 7:07Factorials refresher
- 10:04CODING CHALLENGE: Factorial program using iteration, recursion
- 14:57What is a permutation?
- 16:34CODING CHALLENGE: Recursive permutation
- 20:13Iterative permutation example
- 22:178/N queens problem: theory & explanation
- 23:57Real world example of permutations
- 24:49Lesson recap
- 26:11What are data structures?
- 27:53What is a one-dimensional array?
- 29:01Search & sort
- 30:39CODING CHALLENGE: Linear search
- 31:00Binary search
- 32:06CODING CHALLENGE: Iterative binary search
- 33:31Coding a recursive binary search
- 34:47Bubble sort
- 36:42CODING CHALLENGE: Bubble sort
- 38:02Insertion sort
- 39:24CODING CHALLENGE: Insertion sort
- 40:36Linked lists
- 44:01CODING CHALLENGE: Linked list (traverse, search, add, delete, header, nodes, tail)
- 52:12Hash tables
- 56:27Lesson recap
- 57:42Divide & conquer algorithm paradigm: uses, benefits and more
- 1:00:43Merge sort
- 1:02:48CODING CHALLENGE: An efficient merge sort
- 1:05:48Getting judged mercilessly on LeetCode
- 1:06:47Getting Python to do the work for us with sorted()
- 1:07:33Matrix multiplication
- 1:10:06CODING CHALLENGE: Matrix multiplication
- 1:11:20Strassen algorithm
- 1:14:45CODING CHALLENGE: Strassen algorithm
- 1:16:27Lesson recap
- 1:17:21What is a greedy algorithm?
- 1:19:20Assign mice to holes conceptual overview
- 1:21:45CODING CHALLENGE: Assign mice to holes
- 1:23:10Fractional knapsack
- 1:23:36Understanding the fractional knapsack problem with a (light-hearted) dystopian apocalypse example
- 1:25:54Coding challenge prep
- 1:27:13CODING CHALLENGE: Fractional knapsack
- 1:31:49Egyptians fractions
- 1:34:03CODING CHALLENGE: Egyptian fractions
- 1:37:06Lesson recap
- 1:38:15What is dynamic programming (also called DP)?
- 1:41:55What is the principle of optimality?
- 1:42:20The 3-step process to solving a problem with optimal substructure
- 1:43:55Introduction to “ugly numbers”
- 1:47:19CODING CHALLENGE: Ugly numbers
- 1:51:41Traveling salesman problem (TSP)
- 1:55:49CODING CHALLENGE: Traveling salesman problem
- 1:59:52Palindromic matrix paths
- 2:03:11CODING CHALLENGE: Palindromic matrix paths
- 2:08:37Lesson recap
- 2:10:03Course wrap up (and the importance of coding every day)
Show the creator's full description
In this Introduction to Algorithms in Python course, you'll learn about algorithm basics like recursion and then go all the way to working with concepts like dynamic programming.
The 5 main course segments include simple recursive algorithms, data structures, divide & conquer, greedy algorithms, and dynamic programming.
✏️ Joy Brock developed this course in collaboration with realtoughcandy.io. Check out Joy's channel: https://www.youtube.com/c/PythonLearningChannel
🍬 Sign up for the RealToughCandy newsletter and get a free ebook plus coding challenges, exclusive promo codes and more delivered directly to your inbox. ➡️ https://realtoughcandy.com/newsletter-and-free-ebook/
⭐️ Code Samples ⭐️
🔗 https://github.com/joyb0218/intro_to_algorithms/blob/main/1_recursive_algorithms
🔗 https://github.com/joyb0218/intro_to_algorithms/blob/main/2_data_structures
🔗 https://github.com/joyb0218/intro_to_algorithms/blob/main/3_divide_conquer
🔗 https://github.com/joyb0218/intro_to_algorithms/blob/main/4_greedy_algorithms
🔗 https://github.com/joyb0218/intro_to_algorithms/blob/main/5_dynamic_programming
❤️ Try interactive Python courses we love, right in your browser: https://scrimba.com/freeCodeCamp-Python (Made possible by a grant from our friends at Scrimba)
⭐️ Course Contents ⭐️
⌨️ (0:00:00) Intro & course overview
⌨️ (0:07:07) Factorials refresher
⌨️ (0:10:04) CODING CHALLENGE: Factorial program using iteration, recursion
⌨️ (0:14:57) What is a permutation?
⌨️ (0:16:34) CODING CHALLENGE: Recursive permutation
⌨️ (0:20:13) Iterative permutation example
⌨️ (0:22:17) 8/N queens problem: theory & explanation
⌨️ (0:23:57) Real world example of permutations
⌨️ (0:24:49) Lesson recap
⌨️ (0:26:11) What are data structures?
⌨️ (0:27:53) What is a one-dimensional array?
⌨️ (0:29:01) Search & sort
⌨️ (0:30:39) CODING CHALLENGE: Linear search
⌨️ (0:31:00) Binary search
⌨️ (0:32:06) CODING CHALLENGE: Iterative binary search
⌨️ (0:33:31) Coding a recursive binary search
⌨️ (0:34:47) Bubble sort
⌨️ (0:36:42) CODING CHALLENGE: Bubble sort
⌨️ (0:38:02) Insertion sort
⌨️ (0:39:24) CODING CHALLENGE: Insertion sort
⌨️ (0:40:36) Linked lists
⌨️ (0:44:01) CODING CHALLENGE: Linked list (traverse, search, add, delete, header, nodes, tail)
⌨️ (0:52:12) Hash tables
⌨️ (0:56:27) Lesson recap
⌨️ (0:57:42) Divide & conquer algorithm paradigm: uses, benefits and more
⌨️ (1:00:43) Merge sort
⌨️ (1:02:48) CODING CHALLENGE: An efficient merge sort
⌨️ (1:05:48) Getting judged mercilessly on LeetCode
⌨️ (1:06:47) Getting Python to do the work for us with sorted()
⌨️ (1:07:33) Matrix multiplication
⌨️ (1:10:06) CODING CHALLENGE: Matrix multiplication
⌨️ (1:11:20) Strassen algorithm
⌨️ (1:14:45) CODING CHALLENGE: Strassen algorithm
⌨️ (1:16:27) Lesson recap
⌨️ (1:17:21) What is a greedy algorithm?
⌨️ (1:19:20) Assign mice to holes conceptual overview
⌨️ (1:21:45) CODING CHALLENGE: Assign mice to holes
⌨️ (1:23:10) Fractional knapsack
⌨️ (1:23:36) Understanding the fractional knapsack problem with a (light-hearted) dystopian apocalypse example
⌨️ (1:25:54) Coding challenge prep
⌨️ (1:27:13) CODING CHALLENGE: Fractional knapsack
⌨️ (1:31:49) Egyptians fractions
⌨️ (1:34:03) CODING CHALLENGE: Egyptian fractions
⌨️ (1:37:06) Lesson recap
⌨️ (1:38:15) What is dynamic programming (also called DP)?
⌨️ (1:41:55) What is the principle of optimality?
⌨️ (1:42:20) The 3-step process to solving a problem with optimal substructure
⌨️ (1:43:55) Introduction to “ugly numbers”
⌨️ (1:47:19) CODING CHALLENGE: Ugly numbers
⌨️ (1:51:41) Traveling salesman problem (TSP)
⌨️ (1:55:49) CODING CHALLENGE: Traveling salesman problem
⌨️ (1:59:52) Palindromic matrix paths
⌨️ (2:03:11) CODING CHALLENGE: Palindromic matrix paths
⌨️ (2:08:37) Lesson recap
⌨️ (2:10:03) Course wrap up (and the importance of coding every day)
🎉 Thanks to our Champion and Sponsor supporters:
👾 Raymond Odero
👾 Agustín Kussrow
👾 aldo ferretti
👾 Otis Morgan
👾 DeezMaster
--
Learn to code for free and get a developer job: https://www.freecodecamp.org
Read hundreds of articles on programming: https://freecodecamp.org/news
Description and video by freeCodeCamp.org. This page is an independent companion view; the video is embedded from YouTube.