Your code runs fast…
But suddenly crashes when input grows
Why?
Because of Space Complexity
What is Space Complexity?
Space complexity measures how much memory your algorithm uses as input grows.
It includes:
- Input memory
- Extra memory (auxiliary space)
Common Space Complexities
- O(1) – Constant space
- O(n) – Linear space
- O(n²) – Huge memory usage
Examples
O(1) Space
int sum = 0;
for (int i = 0; i < n; i++) sum += arr[i];
Only a few variables used
O(n) Space
int[] copy = new int[arr.length];
for (int i = 0; i < arr.length; i++) copy[i] = arr[i];
Creates a new array
O(n²) Space
int[][] matrix = new int[n][n];
Memory usage grows very fast
Hidden Danger: Recursion
Recursive functions also use stack memory.
Example:
Fibonacci recursion → O(n) space
Reality Check
Fast code ≠ Efficient code
If memory usage is high →
Your app can crash or lag badly
For More: https://www.quipoin.com/tutorial/data-structure-with-java/space-complexity
Top comments (0)