- Simple recursive algorithms
- Backtracking algorithms
- Divide and conquer algorithms
- Dynamic programming algorithms
- Greedy algorithms
- Branch and bound algorithms
- Brute force algorithms
- Randomized algorithms
Complexity of Algorithms :
- Constant - O(1)
- Logarithmic - O(log(N))
- Linear - O(N)
- Quadratic - O(N*N)
- Cubic - O(N*N*N)
- ...
- Exponential - O(N!) or O(2^N) or O(N^K) or many others.
Algorithms are at the core of Computer Science; knowledge of algorithms and data structures is essential to develop solid programming skills as well as for programming interviews. I appreciate the author's efforts in posting such educational articles. Thank you for sharing this interesting problem. Great blog. Data structure tutorial
ReplyDelete