top of page

About the Course
-
Techniques and principles of algorithm design including divide-and-conquer and greedy algorithms.
-
Complexity (worst and average case) analysis and their associated asymptotic notations (Theta, Big O, Omega).
-
Iterative sorting algorithms: Bubble sort, insertion sort.
-
Recursive sorting: merge sort, quick sort, heap sort.
-
Sorting in linear time: counting/radix sort.
-
Decision tree analysis: N*logN bound on comparison-based sorting.
-
Algorithms for graph problems: Shortest path (Dijkstra), minimum spanning trees (MST algorithms: Kruskal, Prim).
-
Hashing.
-
Discussion on NP-class problems (e.g. Travelling Salesman Problem).
Instructor

Join Discord
Consultation Hours
Resources
Students on Duty
Fahim Shahriar
Sharmin Islam Shroddha
Tasnim Nazifa Kamal
bottom of page