Big-O Notation Analysis Of Algorithms

ADVERTISEMENT

Big-O Notation
Analysis of Algorithms
(how fast does an algorithm grow with respect to N)
(Note: Best recollection is that a good bit of this document comes from C++ For You++, by Litvin & Litvin)
The time efficiency of almost all of the algorithms we have discussed can be characterized by only a few growth rate functions:
O(l) - constant time
I.
This means that the algorithm requires the same fixed number of steps regardless of the size of the task.
Examples (assuming a reasonable implementation of the task):
A. Push and Pop operations for a stack (containing n elements);
B. Insert and Remove operations for a queue.
II.
O(n) - linear time
This means that the algorithm requires a number of steps proportional to the size of the task.
Examples (assuming a reasonable implementation of the task):
A.
Traversal of a list (a linked list or an array) with n elements;
B.
Finding the maximum or minimum element in a list, or sequential search in an unsorted list of n elements;
C.
Traversal of a tree with n nodes;
th
D.
Calculating iteratively n-factorial; finding iteratively the n
Fibonacci number.
2
III.
O(n
) - quadratic time
The number of operations is proportional to the size of the task squared.
Examples:
A.
Some more simplistic sorting algorithms, for instance a selection sort of n elements;
B.
Comparing two two-dimensional arrays of size n by n;
C.
Finding duplicates in an unsorted list of n elements (implemented with two nested loops).
IV.
O(log n) - logarithmic time
Examples:
A.
Binary search in a sorted list of n elements;
B.
Insert and Find operations for a binary search tree with n nodes;
C.
Insert and Remove operations for a heap with n nodes.
V.
O(n log n) - "n log n " time
Examples:
A.
More advanced sorting algorithms - quicksort, mergesort
n
VI.
O(a
) (a > 1) - exponential time
Examples:
A.
Recursive Fibonacci implementation
B.
Towers of Hanoi
C.
Generating all permutations of n symbols

ADVERTISEMENT

00 votes

Related Articles

Related forms

Related Categories

Parent category: Education
Go
Page of 2