The term Space Complexity is misused for Auxiliary Space at many places. Following are the correct definitions of Auxiliary Space and Space Complexity.
Auxiliary Space is the extra space or temporary space used by an algorithm.
Space Complexity of an algorithm is total space taken by the algorithm with respect to the input size. Space complexity includes both Auxiliary space and space used by input.
For example, if we want to compare standard sorting algorithms on the basis of space, then Auxiliary Space would be a better criteria than Space Complexity. Merge Sort uses O(n) auxiliary space, Insertion sort and Heap Sort use O(1) auxiliary space. Space complexity of all these sorting algorithms is O(n) though.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
- Largest perfect square number in an Array
- Maximum number of parallelograms that can be made using the given length of line segments
- Probability of getting two consecutive heads after choosing a random coin among two different types of coins
- Check whether bitwise OR of N numbers is Even or Odd
- Jump Pointer Algorithm
- Count pairs (i,j) such that (i+j) is divisible by A and B both
- Lower and Upper Bound Theory
- Sort elements by frequency | Set 5 (using Java Map)
- Difference between Deterministic and Non-deterministic Algorithms
- Python Code for time Complexity plot of Heap Sort
- Applications of Hashing
- Sorting without comparison of elements
- Measure execution time with high precision in C/C++
- In-Place Algorithm
- Cyclomatic Complexity