Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Design and Analysis of Algorithms

Neso Academy via YouTube

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Master the fundamental principles of algorithmic design and analysis through this comprehensive course covering essential topics for computer science students, competitive programming aspirants, and developers. Explore the core concepts starting with algorithm characteristics, decidable versus undecidable problems, and the importance of algorithm analysis. Dive deep into asymptotic notations including Big O, Big Omega, and Big Theta notations with extensive solved problems and practical applications. Learn to analyze time complexity of various loop structures from single loops with different update expressions to complex nested loop scenarios. Understand space complexity analysis of recursive algorithms through call stack examination and practical examples including factorial and Fibonacci calculations. Study recurrence relations and master the substitution method for solving time and space complexity problems through numerous worked examples. Apply theoretical knowledge to classic problems like the Towers of Hanoi, implementing recursive solutions and analyzing their complexity. Build analytical skills essential for software development optimization, competitive programming success, and technical interview preparation through systematic coverage of algorithmic foundations with rapid-fire quizzes reinforcing key concepts throughout the learning journey.

Syllabus

Introduction to Algorithms
Algorithm vs. Program
Characteristics of an Algorithm
Significance of Algorithms
Decidable vs. Undecidable Problems in Algorithms
The Nature of Undecidable Problems
Posteriori vs. Priori Analysis
Algorithms - Rapid Fire Quiz 1
Importance of Algorithm Analysis
Importance of Growth Rate
Introduction to Big O Notation
Big O Notation and Binary Search
Formal Definition of Big O Notation
Big O Notation (Solved Problems) - Set 1
Big O Notation (Solved Problems) - Set 2
Big O Notation (Solved Problems) - Set 3
Big O Notation (Solved Problems) - Set 4
Common Big O Runtimes
Functions in Asymptotic Notations (Decrement Functions)
Functions in Asymptotic Notations (Constant Functions)
Functions in Asymptotic Notations (Logarithmic Functions)
Functions in Asymptotic Notations (Polynomial Functions)
Functions in Asymptotic Notations (Exponential Functions)
Functions in Asymptotic Notations (Solved Problem 1)
Functions in Asymptotic Notations (Solved Problem 2)
Functions in Asymptotic Notations (Solved Problem 3)
The Big Omega (Ω) Notation
The Big Theta (θ) Notation
Big Omega and Big Theta Notations (Solved Problems)
Properties of Asymptotic Notations (General Property)
Properties of Asymptotic Notations (Reflexive Property)
Properties of Asymptotic Notations (Symmetric Property)
Properties of Asymptotic Notations (Transpose Symmetric Property)
Properties of Asymptotic Notations (Transitive Property)
Properties of Asymptotic Notations (Addition and Multiplication)
The Little o Notation
The Little Omega (ω) Notation
Asymptotic Notations - Summary
Asymptotic Notations (Solved Problem 1)
Asymptotic Notations (Solved Problem 2)
Asymptotic Notations (Solved Problem 3)
Asymptotic Notations (Solved Problem 4)
Asymptotic Notations (Solved Problem 5)
Asymptotic Notations (Solved Problem 6)
Algorithms - Rapid Fire Quiz 2
Understanding the Time Complexity of an Algorithm
Understanding the Space Complexity of an Algorithm
Analysis of Algorithms (Logarithms and Summations)
Time Complexity of Single Loops (Introduction)
Time Complexity of Single Loops (Increment by a Constant)
Time Complexity of Single Loops (Decrement by a Constant)
Time Complexity of Single Loops (Multiplying the Update Expression)
Time Complexity of Single Loops (Dividing the Update Expression)
Time Complexity of Single Loops (Update Expression with Power)
Time Complexity of Single Loops (Conditional Statement with a Function)
Time Complexity of Single Loops (Initialization Statement with a Function)
Time Complexity of Nested Loops (Independent Loops)
Time Complexity of Nested Loops (Independent Loop Examples)
Time Complexity of Nested Loops (Dependent Loops)
Time Complexity of Nested Loops (Dependent Loop Examples)
Time Complexity of Loops (Solved Problem 1)
Time Complexity of Loops (Solved Problem 2)
Time Complexity of Loops (Solved Problem 3)
Time Complexity of Loops (Solved Problem 4)
Time Complexity of Loops (Solved Problem 5)
Time Complexity of Loops (Solved Problem 6)
Algorithms - Rapid Fire Quiz 3
Space Complexity of Recursive Algorithms (The Call Stack)
Space Complexity of Recursive Algorithms (A Recursive Function)
Finding the Space Complexity of Recursive Algorithms
Space Complexity of Recursive Algorithms (Factorial of n)
Space Complexity of Recursive Algorithms (nth Fibonacci Number)
Space Complexity of Recursive Algorithms (Solved Problem 1)
Space Complexity of Recursive Algorithms (Solved Problem 2)
Space Complexity of Recursive Algorithms (Solved Problem 3)
Space Complexity of Recursive Algorithms (Solved Problem 4)
Algorithms - Rapid Fire Quiz 4
Writing Recurrence Relations
Substitution Method to Solve Recurrence Relation of Time
Substitution Method to Solve Recurrence Relation of Return Value
Substitution Method to Solve Recurrence Relation of Multiplications
Solving Recurrences using Substitution Method (Solved Problem 1)
Solving Recurrences using Substitution Method (Solved Problem 2)
Solving Recurrences using Substitution Method (Solved Problem 3)
Solving Recurrences using Substitution Method (Solved Problem 4)
Solving Recurrences using Substitution Method (Solved Problem 5)
Solving Recurrences using Substitution Method (Solved Problem 6)
Solving Recurrences using Substitution Method (Solved Problem 7)
Solving Recurrences using Substitution Method (Solved Problem 8)
Solving Recurrences using Substitution Method (Solved Problem 9)
Introduction to Towers of Hanoi
Towers of Hanoi (Recursive Algorithm)
Towers of Hanoi (Implementation)
Towers of Hanoi (Recurrence Relation of Moves)
Algorithms - Rapid Fire Quiz 5

Taught by

Neso Academy

Reviews

Start your review of Design and Analysis of Algorithms

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.