Recursion, backtracking, dynamic programming and data structures (linked lists, queues, stacks and binary search trees)
What you’ll learn
- what is recursion
- what are backtracking and dynamic programming
- what are the fundamental data structures: array, linked lists, stacks, queues and binary search trees
- Requirements
- C++ fundamentals
Description
This course is for those who are interested in computer science and want to implement the algorithmsand given data structures in C++ from scratch. In every chapter you will learn about the theory of a given data structure or algorithm and then you will implement them from scratch.
Chapter 1: Recursion
- theory behind recursion (recursive function calls)
- recursion and stack memory of the OS
- recursive problems: binary search and Towers of Hanoi problem
Chapter 2: Backtracking
- what is backtracking
- how to solve problems with backtracking
- N-queens problem, coloring problem and knight’s tour
Chapter 3: Dynamic Programming
- overlapping subproblems and dynamic programming
- what is “memoization”
- Fibonacci numbers and knapsack problem
Chapter 4: Data Structures
- data structures and abstract data types (ADTs)
- arrays and linked lists
- stacks
- queues
- binary search trees
- priority queues (heaps)
- associative arrays (maps)
Thanks for joining course, let’s get started!
Who this course is for:
- Intermediate C++ developers curious about algorithms and data structures
- direct link – https://www.udemy.com/algorithms-bootcamp-in-c/?ranMID=39197&ranEAID=VkwVKCHWj2A&ranSiteID=VkwVKCHWj2A-tlOPjTc_Q24wM8kyCIvAgw&LSNPUBID=VkwVKCHWj2A