Advanced Algorithms

Course 4 of 4 in the Data Structures & Algorithms diploma

From topological sort to dynamic programming and its classic problems such as knapsack, LIS, LCS and edit distance, then backtracking and divide and conquer, and finally shortest paths and minimum spanning trees: Dijkstra, Bellman-Ford, Floyd, Prim and Kruskal.

Taught by Dr. Mostafa Saad Ibrahim
Senior Vision Engineer, NVIDIA
From the DSA diplomaPrerequisite: Course 3
48lectures
5units
16–20of the diploma units
3,750EGP, or installments up to 3 months
Course content
Illustration of the Data Structures & Algorithms diploma content

Watch the free lectures now

Data Structures & Algorithms Diploma · 5 free lectures

We'll only send you the link to the free lectures.
Illustration of the Data Structures & Algorithms diploma content
Now watching: the free lectures
Browse the curriculum
Learning outcomes

What you'll learn

  • Apply topological sort.
  • Solve dynamic programming problems: knapsack, LIS, LCS and edit distance.
  • Use backtracking and divide and conquer, such as merge sort and quick sort.
  • Apply shortest paths and minimum spanning trees: Dijkstra, Bellman-Ford, Floyd, Prim and Kruskal.
Who will teach you?
Dr. Mostafa Saad Ibrahim speaking to CSkilled studentsNVIDIA · PhD, SFU
Dr. Mostafa Saad IbrahimSenior Vision Engineer, NVIDIA
Who will teach you?

Dr. Mostafa Saad Ibrahim

He has worked in AI for 15 years across research and engineering, and has published papers at CVPR and ECCV with more than 1,000 combined citations. He has taught programming since 2006 and runs a leading Arabic competitive programming channel on YouTube with more than 134 thousand subscribers.

Why he teaches this course himself

  • ICPC World Finalist, and coach and judge in programming competitions
  • Connects the material to what programmers need in real work
  • Head of the judging committee for programming contests in Egypt and Jordan (ECPC and ACPC)
+years teaching
+Courses & diplomas
+students
Full instructor profile
Detailed learning roadmap

Course curriculum: 5 units

Units 16 to 20 of the Data Structures & Algorithms diploma. Lessons are followed by practice assignments, with video walkthroughs of the solutions.

16Graph – Topological Sort2 lectures
Topological Sort 1
Topological Sort 2
17Dynamic Programming36 lectures
DP Intro - Knapsack intro
Knapsack 2
LIS
LCS
Pick Or Leave Solving
Brute-forcing edit distance
Integer break
DP Ranges
DP Ranges Solving
DP Counting
DP on Grid
Build Output
Tabulation 2

DP pick or leave - Homework

DP pick-or-leave homework 1 - 3 Medium Challenges
DP pick-or-leave homework 1 - Solutions - p3 - 1691
DP pick-or-leave homework 2 - 3 Medium to Hard Challenges
DP pick-or-leave homework 2 - Solution p1 - 198

DP Enumerating the choices - Homework

DP choices Homework 1 - 2 Easy to Medium Challenges
DP choices Homework 1 - Solution p1 - 746

DP Range Patterns - Homework

DP ranges Homework 1 - 3 Medium Challenges
DP ranges Homework 1 - Solution p3 - 1312
DP ranges Homework 2 - 2 Hard Challenges

DP Counting - Homework

DP Counting Homework 1 - 4 Medium Challenges
DP Counting Homework 1 - Solution p3 - 1155
DP Counting Homework 1 - Solution p4 - 823

DP Grid - Homework

DP on Grid Homework 1 - 4 Medium to Hard Challenges
DP on Grid Homework 1 - Solution p1 - 933
DP on Grid Homework 1 - Solution p4 - 174

DP Building Output - Homework

Building DP Output Homework 1 - 3 Medium Challenges
Building DP Output Homework 1 - Solution p1 - lis v2
Building DP Output Homework 1 - Solution p3 - mcm

DP Tabulation - Homework

DP Tabulation Homework 1 - 4 Easy to Medium Challenges
DP Tabulation Homework 1 - Solution p1
DP Tabulation Homework 1 - Solution p2
DP Tabulation Homework 1 - Solution p3
DP Tabulation Homework 1 - Solution p4
18Backtracking2 lectures
Backtracking 1
Backtracking 2
19Divide and Conquer2 lectures
Merge and Quick Sort
Complexity
20Graph (Part 2)6 lectures
Graph - Floyd
Graph - BellmanFord
Graph - Dijkstra 1
Graph - Dijkstra 2 - Node split
Graph - MST - Prim
Graph - MST - Kruskal

Why CSkilled instead of scattered resources?

A comparison between learning from scattered resources and learning from one integrated curriculum.

Scattered resources (YouTube / generic courses / bootcamps)

  • Depth and curriculum: Scattered content with no clear order, so you get lost between levels.
  • Practice: Few problems, often without explained solutions, and small, incomplete projects.
  • Instructor and language: Uneven quality of explanation, and much of it is in English only.
  • Support and cost: No guidance, and dollar-priced subscriptions or expensive bootcamps.

What do you get at CSkilled Academy?

  • Depth and curriculum: 70 lectures and 90 hours in two versions, Python and C++, explaining the idea before using any ready-made tool.
  • Practice and projects: Graded problems with explained solutions, and hands-on projects that bring what you learned together into complete work.
  • Instructor and language: Taught in Arabic with English terminology, with six Diplomas taught by Dr. Mostafa Saad, who has taught programming for 20 years and is a Senior Computer Vision Engineer at NVIDIA with a PhD in Computer Vision.
  • Support and payment: A support team that answers your questions on WhatsApp, and interest-free installments for up to 6 months.
What our students say

Real experiences from students who completed the journey

Hundreds of verified reviews
Price and payment

Enroll in the course, or take the full diploma

No interest and no hidden fees.

Course 4 of 4

Advanced Algorithms

48 lectures5 units
Pay in full3,750EGP
Or installments up to 3 months1,675 down, then 2 × 1,037.50 EGP
Outside Egypt$75 in USD
Full diploma

Data Structures & Algorithms Diploma

21 units in C++ · 200+ problems with explained solutions · interest-free installments up to 6 months

Take the diploma in installments over up to 6 months
Judge the teaching for yourself

Start with the free lectures today

Try the teaching with the free lectures, then enroll in Advanced Algorithms for EGP 3,750 or in installments.

No payment detailsInterest-free installments up to 3 monthsTaught in Arabic with the English terms
FAQ

Questions before you enroll

What are the prerequisites for this course?

Completing the third course, or knowing sorting, binary search, DFS and BFS.

Can I complete the full diploma later?

Yes. You can enroll in the diploma's remaining courses one by one, or subscribe to the full diploma at any time.

Can I pay in installments?

Yes, over 3 months with no interest: EGP 1,675 down when you enroll, then 2 monthly payments of EGP 1,037.50.

Are the lectures recorded?

Yes, they're fully recorded and you watch them whenever suits you.

What language is the teaching in?

Arabic, with technical terms in English so you can work with references and the job market.

shieldOur principle: no unrealistic job promises, just solid engineering training.
Have a question?