Get 20% off all career paths from fullstack to AI
NY State-Licensed Certificates in Design, Coding & AI — Online
Overview
Google, IBM & Meta Certificates — All 10,000+ Courses at 40% Off
One annual plan covers every course and certificate on Coursera. 40% off for a limited time.
Get Full Access
Learn fundamental computer science algorithms through clear explanations and practical examples in this comprehensive tutorial covering asymptotic notation, sorting algorithms, and advanced problem-solving techniques. Master the basics of algorithmic analysis by exploring Big O notation and understanding how to evaluate algorithm efficiency. Dive into classic sorting methods including insertion sort and bubble sort, complete with detailed pseudocode implementations. Develop skills in solving recurrence relations through multiple approaches, starting with an overview of recurrence equations and progressing to the Master Method for analyzing divide-and-conquer algorithms. Apply the Master Method to real-world examples including binary search and merge sort analysis. Explore alternative solution techniques through the recursion-tree method using Fibonacci sequence calculations. Conclude by discovering dynamic programming principles and their application to optimizing recursive problems, demonstrated through an efficient Fibonacci implementation that showcases how to eliminate redundant calculations and improve algorithm performance.
Syllabus
Simple explanation of Asymptotic Notation!
Insertion Sort Explained & Pseudocode
Bubble Sort Explained & Pseudocode
Recurrence Equations Overview (Computer Science/Algorithms)
Master Method to Solve Recurrences - Overview
Solving Recurrences Example - Binary Search (Master Method)
Solving Recurrences Example - Merge Sort (Master Method)
Solving Recurrences Example - Fibonacci (Recursion-Tree Method)
Dynamic Programming Example - Fibonacci
Taught by
Keith Galli