CS 3343/3341
 Analysis of Algorithms 
Spring 2012
  Hierarchy of Problems   


A Hierarchy of Increasingly Difficult Problems:

We are considering computational problems with input size proportion to a variable n. Sometimes we are interested in worst-case time performance, and sometime in average-case time performance. We may also sometimes be interested in the amount of space (memory) a problem requires. Mostly we will be interested in upper bounds for the performance, and often tight upper bounds if we can obtain them. Lower bounds are also of great interest, but it is usually not possible to prove such bounds. We are rarely interested in best-case performance.

Keep in mind that a given problem may have a number of algorithms that solve it, with differing performance. Thus we can talk about the difficulty of an algorithm, or the inherent difficulty of a problem, that is, what is the best you can do on the problem with any algorithm.

Here are some big-O or big-Θ bounds, with a corresponding algorithm afterwards:


Revision date: 2012-04-02. (Please use ISO 8601, the International Standard Date and Time Notation.)