Pseudo-polynomial Algorithms What is Pseudo-polynomial? An algorithm whose worst case time complexity depends on numeric value of input (not number of inputs) is called Pseudo-polynomial algorithm. For example, consider the problem of counting frequencies of all elements in an array of positive numbers. A pseudo-polynomial time solution for this is to first find the maximum

## What does ‘Space Complexity’ mean?

What does ‘Space Complexity’ mean? Space Complexity: The term Space Complexity is misused for Auxiliary Space at many places. Following are the correct definitions of Auxiliary Space and Space Complexity. Auxiliary Space is the extra space or temporary space used by an algorithm. Space Complexity of an algorithm is total space taken by the algorithm

## Analysis of Algorithm | Set 5 (Amortized Analysis Introduction)

Analysis of Algorithm | Set 5 (Amortized Analysis Introduction) Amortized Analysis is used for algorithms where an occasional operation is very slow, but most of the other operations are faster. In Amortized Analysis, we analyze a sequence of operations and guarantee a worst case average time which is lower than the worst case time of

## Analysis of Algorithm | Set 4 (Solving Recurrences)

Analysis of Algorithm | Set 4 (Solving Recurrences) In the previous post, we discussed analysis of loop. Many algorithms are recursive in nature. When we analyze them, we get a recurrence relation for time complexity. We get running time on an input of size n as a function of n and the running time on inputs of

## Analysis of Algorithms | Set 4 (Analysis of Loops)

Analysis of Algorithms | Set 4 (Analysis of Loops) We have discussed asymtotic analysis, best worst and average cases and asymptotic notations in previous posts. In this post, analysis of iterative programs with simple examples is discussed. 1) O(1): Time complexity of a function (or set of statements) is considered as O(1) if it doesn’t contain

## Analysis of Algorithms | Set 3 (Asymptotic Notations)

Analysis of Algorithms | Set 3 (Asymptotic Notations) We have discussed asymptotic analysis, and worst average and best cases of algorithms. The main idea of asymptotic analysis is to have a measure of efficiency of algorithms that doesn’t depend on machine specific constants, and doesn’t require algorithms to be implemented and time taken by programs

## Analysis of Algorithms | Set 2 (Worst, Average and Best Cases)

Analysis of Algorithms | Set 2 (Worst, Average and Best Cases) In the previous post, we discussed how Asymptotic analysis overcomes the problems of naive way of analyzing algorithms. In this post, we will take an example of Linear Search and analyze it using Asymptotic analysis. We can have three cases to analyze an algorithm:

## Asymptotic Analysis

Analysis of Algorithms | Set 1 (Asymptotic Analysis) Why performance analysis? There are many important things that should be taken care of, like user friendliness, modularity, security, maintainability, etc. Why to worry about performance? The answer to this is simple, we can have all the above things only if we have performance. So performance is

## What happens when we turn on computer?

Ever wondered what all goes inside your computer when you switch on the power button? How is an Operating System loaded? How you are presented with an user friendly GUI screen? Through this article, Let us peek into the booting process of UNIX like Operating Systems. An overview of the boot process Image courtesy :