Asymptotic Notations in DSA

Asymptotic notations square measure the mathematical notations  describe the period of Associate in algorithmic rule once the input tends towards a selected worth or a limiting worth.



For example: In bubble kind, once the input array is already sorted, the time taken by the algorithmic rule is linear i.e. the simplest case.

But, once the input array is in reverse condition, the algorithmic rule takes the atmost time (quadratic) to kind the weather i.e. the worst case.

When the input array is neither sorted nor in reverse order, then it takes average time. These durations square measure denoted asymptotic notations.

There are mainly 3 asymptotic notations:

  1. Big-O notation
  2. Omega notation
  3. Theta notation
Big- O Notations ( O - Notations ) :
Big-O notation represents the upper bound of the running time of an algorithm. So, it gives the worst-case complexity of an algorithm



 O(g(n)) = { f(n): there exist positive constants c and n0  
       such that 0 ≤ f(n) ≤ cg(n) for all n ≥ n0 }  

The above expression can be described as a function f(n) belongs to the set O(g(n)) if there exists a positive constant c such that it lies between 0 and cg(n), for sufficiently large n.

For any value of n, the running time of an algorithm does not cross the time provided by O(g(n)).

Since it gives the worst-case running time of an algorithm, it is widely used to analyze an algorithm as we are always interested in the worst-case scenario.

Omega Notation (Ω-notation) :

Omega notation represents the lower bound of the running time of an algorithm. Thus, it provides the best case complexity of an algorithm.


 Ω(g(n)) = { f(n): there exist positive constants c and n0   
       such that 0 ≤ cg(n) ≤ f(n) for all n ≥ n0 }  

The above expression can be described as a function f(n) belongs to the set Ω(g(n)) if there exists a positive constant c such that it lies above cg(n), for sufficiently large n.

For any value of n, the minimum time required by the algorithm is given by Omega Ω(g(n)).

Theta Notation (Θ-notation) :

Theta notation encloses the function from above and below. Since it represents the upper and the lower bound of the running time of an algorithm, it is used for analyzing the average-case complexity of an algorithm.


For a function g(n), Θ(g(n)) is given by the relation:
 Θ(g(n)) = { f(n): there exist positive constants c1, c2 and n0  
       such that 0 ≤ c1g(n) ≤ f(n) ≤ c2g(n) for all n ≥ n0 }  

The above expression can be described as a function f(n) belongs to the set Θ(g(n)) if there exist positive constants c1 and c2 such that it can be sandwiched between c1g(n) and c2g(n), for sufficiently large n.

If a function f(n) lies anywhere in between c1g(n) and c2g(n) for all n ≥ n0, then f(n) is said to be asymptotically tight bound.

For Videos Join Our Youtube Channel: Join Now