Skip to main content

How to calculate Running Time of an algorithm



                                           Calculate Running Time of an Algorithm


The running time of algorithm defines the time required to execute an algorithm on the given set of inputs(n). There are mainly three types of complexity cases defines to measure the running time of an algorithm also known as Asymptotic analysis.

1) Best Case : Best case also called (Ω) omega notation which measure the best case scenario of how long an algorithm can possible take to complete given operation on (n) inputs. It's also known as lower bound.

2) Average Case: It represents by (Θ) theta notation which measure the average time requires to complete a given operation on set of inputs. It measures between upper and lower bound running time and calculate average running time.

3) Worst Case: It defines the worst case running time of an algorithm. Also represent using (Ο) Big-oh. It is the upper bound of an algorithm running time and measures the worst case scenario of how long an algorithm can possible take to complete given operation on set of inputs(n). Generally calculates worst case of an algorithm for a problem and then average and best case.


Example:- How to calculate running time of an algorithm.

Given the sequence of the Fibonacci numbers 0,1,1,2,3,5,8,13,21,..
Program for output nth Fibonacci number on given n, and analysis of running time on each step.

               Time taken per Instruction        Number of repetition       Total time taken by instruction

1. fun fib(n){            

2. if( n < 2)  return n |   constant c1     |                  1                            |                  c1
3. else{
4. t1 := 0              |        constant c2       |                 1                            |                  c2
5. t2:= 1               |         constant c3      |                  1                           |                   c3
6. while(n > 1){   |        constant c4      |                  n                            |                   c4 *n
7. sum := t1 + t2  |        constant c5      |                  n-1                         |                   c5 *(n-1)
8. t1 := t2             |        constant c6      |                   n-1                         |                   c6 *(n-1)
9. t2 := sum         |        constant c7       |                  n-1                         |                   c7 *(n-1)   
10. n := n-1         |        constant c8       |                  n-1                         |                    c8 *(n-1)
}
}
11. return sum   |       constant c9       |                 1                            |                       c9
}

Hence the above calculating instructions time and number of repetitions. Further calculate the complete running time of the algorithm as:-

for T(n)  when n>=2 (we uses) Hence T(n) =


c2 + c3 + c4*n + c5*(n-1) + c6*(n-1) + c7*(n-1) + c8*(n-1) + c9
 = [ c2 + c3 + c9 - c5 - c6 - c7 - c8 ] + [ c4 + c5 + c6 + c7 + c8 ] * n
 = k0 + (k1*n), where k0 and k1 are constants.

The running time of given algorithm is calculated step-wise. Hence overall time complexity of calculation nth Fibonacci number from given n inputs is O(n).

So running time of an algorithm is important to know about the algorithm execution time which further improves and optimized according to required problems. The space and time complexity of an algorithm is important aspects which helps to measure performance and computation cost of algorithm on particular problem which will further be optimized according to requirements and resource capacity.

Comments

Popular posts from this blog

Machine Learning and It's Types

                           Machine Learning and It's Types                                 Machine Learning is ability to automatically learn and improve from experience without being explicitly programmed. So rather than typing the code for all the times and do knowledge engineering, machine learning helps the machine  to learn from previous data and find insights and pattern from it.  Basically Data is train on given data set and and applied machine learning algorithm and it find insights. Simply put, Machine learning makes a computer act and think like a human. Types of machine learning           Supervised Learning In supervised learning you use labeled data,which is a data set that has been classified, to infer a learning algorithm. The data set is u...

When to Use HeatMap plot for Visualization of Data

HeatMap (Matrix) Plot Visualization for the Data: When to Use? Visual representation always helps in simplification either any real world entities or the data. Visualization  provides an pictorial representation so anyone can easily understand about the data and their insights(what they are representing and in which range the value is lying.                                                                                                                                                             Source: HeatMap Now when the data science becomes one of the popular domain in Computer science. It m...

Artificial Intelligence Transforms the World by Automating the Industries

              Artificial intelligence transforming the world slowly. The self-driving car, Amazon Alexa, IBM Watson, Google voice assistant all these are the few major examples of AI-powered system. The current impact of artificial intelligence makes it's a major field of study for computer science students regarding the future because there is a huge demand for machine learning and Artificial intelligence engineers and researchers in industry. By making everything automatic(self-learning technique) through computation it changes the world slowly. The current scenario of artificial intelligence is highly trending and many of the top multi-national companies acquire this technology to improve their business as well as more production. The one of core part of AI i.e. machine learning which is also also playing a majore role in this growth. . https://www.searchenterpriseai.techtarget.com After seeing the huge demands of machi...