Relation of time and space complexities of an algorithm, Data Structure & Algorithms

What is complexity of an algorithm? What is the basic relation between the time and space complexities of an algorithm? Justify your answer by giving an example.                         

Complexity of an algorithm is the measure of analysis of the algorithm. Analyzing an Algorithm means predicting the resources that the algorithm needs such as memory, communication bandwidth, time and logic gates. Most often it is computational or calculation time that is measured for finding a more suitable algorithm. This is called as time complexity of the algorithm.  The running time of a program is described or defined as a function of the size of its  input. On a specific input, it is traditionally measured as the number of primitive operations or steps executed.

The analysis of algorithm focuses on time complexity and space complexity both. As compared to time analysis, the analysis of space requirement for an algorithm is generally easier and faster, but wherever necessary, both the techniques can be used. The space is referred to as storage needed in addition to the space required storing the input data.  The amount of memory needed by the program to run to completion is referred to as space complexity. For an algorithm, time complexity depends only upon the size of the input, thus, it is a function of input size 'n'. So the amount of time required by an algorithm to run to its completion is referred as time complexity.

The best algorithm to solve a given problem is the one that requires less memory and takes less time to complete its execution of the algorithm. But in practice it is not always likely to achieve both of these objectives. There may be number of approaches to solve a same problem. One such approach may require more space but takes less time to complete its execution while on other hand the other approach requires less space but

more time to complete its execution. Thus we may have to compromise one thing to improve the other. That is, we may be able to reduce space requirement by increasing running time or we can reduce running time by allocating more memory space. This situation where we compromise one to improve the other is known as Time-space trade off.

 

Posted Date: 7/9/2012 9:50:02 PM | Location : United States







Related Discussions:- Relation of time and space complexities of an algorithm, Assignment Help, Ask Question on Relation of time and space complexities of an algorithm, Get Answer, Expert's Help, Relation of time and space complexities of an algorithm Discussions

Write discussion on Relation of time and space complexities of an algorithm
Your posts are moderated
Related Questions
By changing the NULL lines in a binary tree to the special links called threads, it is possible to execute traversal, insertion and deletion without using either a stack or recursi

Q. An, array, A comprises of n unique integers from the range x to y(x and y inclusive where n=y-x). Which means, there is only one member that is not in A. Design an O(n) time alg

Q. Implement a stack making use of the linked list. Show the PUSH and POP operations both. A n s . Stack implemantation using linked list # include # include

Five popular hashing functions are as follows: 1) Division Method 2) Midsquare Method 3) Folding Method 4) Multiplicative method 5) Digit Analysis

The below formula is used to calculate n: n = (x * x)/ (1 - x). Value x = 0 is used to stop the algorithm. Calculation is repeated using values of x until value x = 0 is input. The

Explain the theory of computational complexity A  problem's  intractability  remains  the  similar  for  all  principal  models  of   computations    and   all reasonable inpu

Readjusting for tree modification calls for rotations in the binary search tree. Single rotations are possible in the left or right direction for moving a node to the root position

A graph with n vertices will absolutely have a parallel edge or self loop if the total number of edges is greater than n-1

Question: (a) Discuss the importance of game theory to decisions. (b) Explain the following: (i) saddle point, (ii) two-person zero-sum game. (c) Two leading ?rms, ABC Ltd a

Q. Explain Dijkstra's algorithm for finding the shortest path in the graph given to us.  Ans: The Dijkstra's algorithm: This is a problem which is concerned with finding