Back to Courses

Algorithm Analysis & Design

Computer Science and AI

Course Materials & Resources

Lecture Videos

  • Basic Data Structures-IWatch
  • Basic Data Structures-I Part 2Watch
  • Basic Data Structures-IIWatch
  • Introduction to Algorithms OnlineWatch
  • Concepts of time complexity OnlineWatch
  • Concepts of time complexity Best/Worst/Average case scenarios OnlineWatch
  • Asymptotic Analysis OnlineWatch
  • Introduction to AlgorithmsWatch
  • Concepts of time complexityWatch
  • Asymptotic AnalysisWatch
  • Non- Recursive AlgorithmsWatch
  • Recursive AlgorithmsWatch
  • Brute Force OnlineWatch
  • Brute Force String Matching 1Watch
  • Brute Force String Matching 2 and RestWatch
  • Exhaustive SearchWatch
  • Brute Force QuestionsWatch
  • Decrease and Conquer Insertion SortWatch
  • Decrease and Conquer OtherWatch
  • Decrease and Conquer Other OnlineWatch
  • Divide and Conquer Introduction and KaratsubaWatch
  • Divide and Conquer Merge SortWatch
  • Divide and Conquer Quick SortWatch
  • Divide and Conquer Quick Sort OnlineWatch
  • Transform and Conquer Heap SortWatch

About This Course

This course offers a comprehensive introduction to the core principles and strategies used in algorithm design and analysis. Starting from fundamental data structures, it covers recursion, iteration, and efficiency analysis. The course advances to classic algorithmic strategies including Brute Force, Decrease-and-Conquer, Divide-and-Conquer (e.g., Quicksort, Karatsuba), and Transform-and-Conquer techniques. Modern approaches such as Dynamic Programming and Greedy Techniques are also covered.

Instructor: Eng. Abdulrahman Hamdi

Need help with a concept or topic?

I’m available to discuss your challenges in math, programming, or university courses. Let’s solve it together.

Algorithm Analysis & Design | Abdulrahman Hamdi