Most algorithms use some kind of iteration or recursion to solve a problem. Complexity is concerned with the number of iterations, the depth of the recursion and so on. A more complex algorithm will use a deeper level of recursion and hence take a longer time to process. The important thing to make note of is that there is a limit to how complex an algorithm can become and still remain useful. Generally, programs with constant and linear levels of complexity are very fast.
Polynomial complexity is generally acceptable for most problems.
Exponential complexity is almost always too slow for it to be of any use, and factorial or higher complexity is completely useless except for the most simple problems. Constant A constant time algorithm is exactly that. Regardless of the input, the number of steps taken to solve the problem always remains constant. These kinds of algorithms generally use no iteration or recursion. They generally involve a set number of steps which is determined when the program is written.