• Course Code: CMPS441
  • Credits: 3
  • Hours Distribution: (3Crs.:2 Lec,3Lab)
  • Course Type: Major Core (MJC)

Course Description

A systematic study of algorithms and their complexity. Topics include techniques for designing efficient computer algorithms, proving their correctness, analyzing their run-time complexity; as well as Divide and Conquer algorithms, Greedy algorithms, Dynamic Programming algorithms, Sorting and Searching algorithms (Binary search, Radix sort, Bucket sort, Count Sort, Insertion sort, Merge sort, Quick sort and Heap sort), Order statistics, Graph algorithms (Graph traversal, Minimum spanning trees and Shortest path problems). Prerequisites: CMPS 347 & CMPS 345