CIT 596 Algorithms & Computation


Course Overview

This course consists of three parts:

  • Basic of complexity - Big Oh, Sorting arrays, Searching, Recursion
  • Graph Algorithms - Shortest paths, Minimum Spanning Tree
  • P vs NP (what is tough for a computer). Decidability (what is impossible for a computer).
There will a midterm (or final) associated with each of the 3 sections.

The final will be not be cumulative. It is scheduled by the registrar.

After successfully completing this course, you also should have gained a greater appreciation for some of the fundamental questions of computer science:

  • What problems can be solved by a computation?
  • How hard is it to compute solutions?
  • How can we express computation?
You will also be aware of some concrete answers to these and related great questions of computer science, the reasons why some questions in this area will remain unanswered forever, and that some answers are still being sought.

 


Instructor

Arvind Bhusnurmath, bhusnur@seas.upenn.edu

 


Textbooks

Our primary textbook will be Algorithms Unlocked by Thomas Cormen.