# Describe how an algorithm with linear time complexity behaves. Describe how an algorithm with exponential time complexity behaves.

Question I

Describe how an algorithm with linear time complexity behaves.
Describe how an algorithm with exponential time complexity behaves.

Question II

Describe time and space complexity of an algorithm. Explain the relationship between them.

Question III

Describe polynomial time (P) and nondeterministic polynomial time (NP) algorithms. What is the difference between them? Give examples to each.

Question IV

What is an NP-complete problem? Describe the factoring problem that the RSA algorithm is based on.

Question V

Which of the following statements are correct?

1. Quadratic time complexity is a type of polynomial complexity
2. Superpolynomial time complex algorithms are harder to solve than algorithms with exponential time complexity.
3. Trying to find the 128-bit key of a cipher text encrypted with AES is a problem with exponential complexity
4. Factoring problem that RSA is using is not probably an NP-complete problem.