Mathematical fundamentals of algorithms and algorithmic techniques. Running Time Analysis of an algorithm. Searching, Sorting, and other techniques associated with retrieving information. Advanced Data structures such as Binary Search Trees and Heaps. Graph algorithms. Dynamic Programming (Knapsack, Floyd, DNA Algorithms). Greedy algorithms (Coins, Scheduling, Huffman encoding). Course requires written programming assignments. (3)

close this window