IST238: Algorithms.

Syllabus.
  1. Introduction
  2. Think guys!
  3. Recursion
  4. Sorting methods
  5. Bitwise operators
  6. Dynamic Programming
  7. Greedy approach
  8. Huffman code
  9. Public and private key encryption
  10. Dictionaries and hash functions
  11. Random number generator

  1. Program examples
  2. Projects.
    1. Insertion sort algorithm - Due by Sep 10, 11:59pm.
    2. Different sequences in the Shell sort algorithm - Due by Sep 17, 11:59pm.
    3. Comparison of merge, quick, and heap sorting methods - Due by Sep 30, 11:59pm.
    4. Dijkstra shortest path algorithm - Due by Nov 7, 11:59pm.
    5. Huffman code - Due by Nov 27, 11:59pm.
  3. Homework assignments.
    1. Selection sort - Due by Aug 31, 11:59pm.
    2. Bubble sort - Due by Sep 4, 11:59pm.
    3. Shell sort - Due by Sep 11, 11:59pm.
    4. Merge sort - Due by Sep 20, 11:59pm.
    5. Quick sort - Due by Sep 24, 11:59pm.
    6. Sieve of Eratosthenes - Due by Oct 10, 11:59pm.
    7. Binomail coefficients - Due by Oct 14, 11:59pm.
    8. Floyd's shortest path algorithm - Due by Oct 17, 11:59pm.
    9. Knapsack problem - dynamic approach - Due by Oct 27, 11:59pm.
    10. Implement public and private keys encryption. - Due by Nov 19, 11:59pm.
  4. Midterm exam !!! is due by Saturday October 22, 2004 by 11:59pm