Computational ComplexityKasun Ranga Wijeweera(Email: krw19870829@gmail.com)
Background• The running time of a program is proportional to someconstant multiplied by one of these terms plus some small...
Examples• N3 + 5 * N2 – 3 * N + 7N3 is the leading term• N = 1083 * N2 and 2 * N3Constant coefficients can be ignored
Computational Complexity• Here the worst case performance of algorithms is studied• Constant factors are ignored• Determin...
Definition of Big-Oh Notation• A function g(N) is said to O(f(N)) if there exists constants c0and N0 such that g(N) is les...
Examples• 7 * N - 27 *N – 2 is O (N)Take c0 = 7, N0 = 1• 3 * N3 + 20 * N2 + 53 * N3 + 20 * N2 + 5 is O (N3)Take c0 = 4, N0...
Problem• 7 * N – 2 < N2Take c0 = 7, N0 = 1?
Growth Rate• Functions in order of increasing growth rate is as follows 1 log N N N log N N2 N3 2N
Examples of Algorithm Running Times• Min element of an array: O (N)• Closest points in the plane,i.e. smallest distance pa...
Comparing Algorithms Experimentally• Implement each algorithm– Lots of work– Error prone• Run it with sample data• Count t...
A Sample C Programvoid main (){clrscr ();clock_t start, end;start = clock ();delay (1000);end = clock();cout << “Time = ” ...
Required Header Files# include <conio.h># include <fstream.h># include <dos.h># include <time.h>
Reference
Any Questions?
Thank You!
Upcoming SlideShare
Loading in...5
×

Computational Complexity

287
-1

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
287
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Computational Complexity

  1. 1. Computational ComplexityKasun Ranga Wijeweera(Email: krw19870829@gmail.com)
  2. 2. Background• The running time of a program is proportional to someconstant multiplied by one of these terms plus some smallertermsLeading Term + Smaller Terms (Negligible for larger N)
  3. 3. Examples• N3 + 5 * N2 – 3 * N + 7N3 is the leading term• N = 1083 * N2 and 2 * N3Constant coefficients can be ignored
  4. 4. Computational Complexity• Here the worst case performance of algorithms is studied• Constant factors are ignored• Determine the functional dependence of the running time
  5. 5. Definition of Big-Oh Notation• A function g(N) is said to O(f(N)) if there exists constants c0and N0 such that g(N) is less than c0 * f (N) for all N > N0
  6. 6. Examples• 7 * N - 27 *N – 2 is O (N)Take c0 = 7, N0 = 1• 3 * N3 + 20 * N2 + 53 * N3 + 20 * N2 + 5 is O (N3)Take c0 = 4, N0 = 21• 3 * log N + 53 * log N +5 is O (log N)Take c0 = 11, N0 = 2
  7. 7. Problem• 7 * N – 2 < N2Take c0 = 7, N0 = 1?
  8. 8. Growth Rate• Functions in order of increasing growth rate is as follows 1 log N N N log N N2 N3 2N
  9. 9. Examples of Algorithm Running Times• Min element of an array: O (N)• Closest points in the plane,i.e. smallest distance pairs: N (N - 1)/2  O (N2)
  10. 10. Comparing Algorithms Experimentally• Implement each algorithm– Lots of work– Error prone• Run it with sample data• Count the time– Same hardware and software are used
  11. 11. A Sample C Programvoid main (){clrscr ();clock_t start, end;start = clock ();delay (1000);end = clock();cout << “Time = ” << (end - start);getch();}
  12. 12. Required Header Files# include <conio.h># include <fstream.h># include <dos.h># include <time.h>
  13. 13. Reference
  14. 14. Any Questions?
  15. 15. Thank You!
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×