iterative approach
private static void printAllSubArrays(int[] nums) {
for (int i = 0; i < nums.length; i++) {
for (int j = i; j < nums.length; j++) {
for (int k = i; k <= j; k++) {
System.out.print(nums[k] + " ");
}
System.out.println();
}
}
}
recursive approach
private static void printAllSubArraysRecursive(int[] nums, int start, int end) {
if (end == nums.length) {
return;
}
if (start > end) {
printAllSubArraysRecursive(nums, 0, end + 1);
} else {
//do print
for (int i = start; i <= end; i++) {
System.out.print(nums[i] + " ");
}
System.out.println();
printAllSubArraysRecursive(nums, start + 1, end);
}
}