Prerequisite – Analysis of Algorithms

Algorithm is a combination or sequence of finite-state to solve a given problem. If the problem is having more than one solution or algorithm then the best one is dicided by the analysis based on two factors.

- CPU Time (Time Complexity)
- Main memory space (Space Complexity)

Time complexity of an algorithm can be calculated by using two methods:

- Posteriori Analysis
- Priori Analysis

**Difference between Aposteriori analysis and A Priori analysis:**

A Posteriori analysis | A priori analysis |
---|---|

Posteriori analysis is a relative analysis. | Piori analysis is an absolute analysis. |

It is dependent on language of compiler and type of hardware. | It is independent of language of compiler and types of hardware. |

It will give exact answer. | It will give approximate answer. |

It doesn’t use asymptotic notations to represent the time complexity of an algorithm. | It uses the asymptotic notations to represent how much time the algorithm will take in order to complete its execution. |

The time complexity of an algorithm using a posteriori analysis differ from system to system. | The time complexity of an algorithm using a priori analysis is same for every system. |

If the time taken by the algorithm is less, then the credit will go to compiler and hardware. | If the program running faster, credit goes to the programmer. |

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the **DSA Self Paced Course** at a student-friendly price and become industry ready.