Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 11

Algorithm Specification

and Complexity
Algorithm Criteria
Every Algorithm must have satisfied following
Criteria:

03/09/23 2
Algorithm Specification

03/09/23 3
Algorithm Specification (Cont.)

03/09/23 4
Algorithm Specification (Cont.)

03/09/23 5
Algorithm Specification (Cont.)

03/09/23 6
Algorithm Time Complexity
Asymptotic Notations
, O, 

 (Theta) (Average Case)

 (Big-oh) (Worst Case)(Upper Bound)

  (Omega) (Best case)(Lower Bound)

03/09/23 7
Algorithm Time Complexity
(Cont.)
Example: f(n) = 3n2 + 17

 (1), (n), (n2)  lower bounds

 O(n2), O(n3), ...  upper bounds

 (n2)  exact bound

03/09/23 8
Algorithm Time Complexity
(Cont.)
Examples (For Practices):

3n+2=O(n) /* 3n+24n for n2 */

3n+3=O(n) /* 3n+34n for n3 */

100n+6=O(n) /* 100n+6101n for n10 */

10n2+4n+2=O(n2) /* 10n2+4n+211n2 for n5 */

6*2n+n2=O(2n) /* 6*2n+n2 7*2n for n4 */


03/09/23 9
Algorithm Time Complexity
(Cont.)
Relations Between , , O:
Theorem : For any two functions g(n) and f(n),
f(n) = (g(n)) if
f(n) = O(g(n)) and f(n) = (g(n)).

I.e., (g(n)) = O(g(n))  (g(n))

In practice, asymptotically tight bounds are obtained from asymptotic upper and
lower bounds.

03/09/23 10
Algorithm Space Complexity
S(P)=C+SP(I)
 Fixed Space Requirements (C)
Independent of the characteristics of the inputs and outputs
 instruction space

 space for simple variables, fixed-size structured variable,


constants
 Variable Space Requirements (SP(I))
depend on the instance characteristic I
 number, size, values of inputs and outputs associated with
I
 recursive stack space, formal parameters, local variables,
return address
03/09/23 11

You might also like