Abdul Bari (YouTube channel)
Abdul Bari's channel is a classic university-style course on the design and analysis of algorithms, taught on a whiteboard in clear English. It covers complexity, divide and conquer, greedy methods, dynamic programming, backtracking, branch and bound, NP-hard problems and string matching, plus Java programming. It suits computer science students studying algorithms as a subject.
1.32M
YouTube · Oct 2026
116
YouTube · Oct 2026
2014
YouTube · Oct 2026
Video
Other
Abdul Bari
Self-paced
Intermediate
Free
What the channel covers
Abdul Bari is a long-time computer science teacher, and the channel's best-known material is a numbered lecture series on the design and analysis of algorithms. It reads like a well-taught university course: each idea is introduced with a worked example on the board, traced step by step, and then analysed for time complexity. The other playlists cover Java Programming, Programming Concepts, Java AWT and Cloud Computing, and there are also computer graphics lectures such as DDA and Bresenham's line and circle drawing algorithms.
The algorithms series
The Algorithms playlist follows the order of a typical syllabus. Videos are numbered by section, for example:
- Asymptotic notation and analysing recurrences.
- Divide and conquer: binary search, merge sort, quick sort.
- Heaps, heap sort and priority queues (2.6.3), and disjoint sets with weighted union and collapsing find (1.12).
- Greedy methods: knapsack, job sequencing, Huffman coding, minimum spanning trees, shortest paths.
- Dynamic programming: matrix chain multiplication, optimal binary search tree, reliability design (4.8), longest common subsequence (4.9) and the travelling salesman problem (4.7).
- Backtracking, such as Hamiltonian cycles (6.4), and branch and bound (7.3).
- NP-hard and NP-complete problems (8.1), string matching with KMP (9.1) and Rabin-Karp (9.2), and B trees and B+ trees in databases (10.2).
Who it suits
Undergraduate students in BSCS, BS Software Engineering or similar programmes whose algorithms exam is coming up, and self-taught developers who want the theory behind the algorithms they use. The approach is mathematical and patient. It is not a problem-solving drill channel; it teaches why an algorithm works and how to analyse it.
How to learn from it without getting stuck in tutorial loops
Hand-traced examples feel easy when someone else is tracing them. Turn each lecture into work:
- Pause before the solution and try the example yourself on paper.
- After the video, trace a new input you made up and check it against VisuAlgo.
- Implement the algorithm in a language you know, and test it on edge cases.
- Revisit the textbook treatment in Introduction to Algorithms or MIT 6.006 Introduction to Algorithms for the proofs.
Pair it with on Sefism
- The DSA and problem solving roadmap and its cheat sheet turn the theory into a practice plan.
- The CS core subjects roadmap and cheat sheet place algorithms alongside the other core courses.
- If you enjoy the analysis side, the Competitive programming roadmap and CP-Algorithms take you further.
Best for: students who want algorithms explained the way a very good lecturer would, one worked example at a time.
Ready to start?
Opens on Abdul Bari in a new tab.
Stuck on something specific?
Writing only gets you so far. If you want an answer to your situation rather than the general case, book a session and we will work through it together. Sessions are free for approved Sefism members, and a few slots open each week.
Follow along
New writing, resources and project ideas land here first.