Saturday, January 2, 2016

Algorithm : Types, Classification and Definition


  1. Simple recursive algorithms
  2. Backtracking algorithms
  3. Divide and conquer algorithms
  4. Dynamic programming algorithms
  5. Greedy algorithms
  6. Branch and bound algorithms
  7. Brute force algorithms
  8. Randomized algorithms

Complexity of Algorithms : 
  1. Constant        - O(1)
  2. Logarithmic  - O(log(N))
  3. Linear           - O(N)
  4. Quadratic      - O(N*N)
  5. Cubic            - O(N*N*N)
  6. ...
  7. Exponential  - O(N!) or O(2^N) or O(N^K) or many others.