﻿ Java - Print all sub-arrays with 0 sum present in an array

# Java: Print all sub-arrays with 0 sum present in a given array of integers

## Java Array: Exercise-55 with Solution

Write a Java program to print all sub-arrays with 0 sum present in a given array of integers.

Example:
Input :
nums1 = { 1, 3, -7, 3, 2, 3, 1, -3, -2, -2 }
nums2 = { 1, 2, -3, 4, 5, 6 }
nums3= { 1, 2, -2, 3, 4, 5, 6 }
Output:
Sub-arrays with 0 sum : [1, 3, -7, 3]
Sub-arrays with 0 sum : [3, -7, 3, 2, 3, 1, -3, -2]
Sub-arrays with 0 sum : [1, 2, -3]
Sub-arrays with 0 sum : [2, -2]

Sample Solution:

Java Code:

``````// Import necessary Java classes.
import java.util.*;
import java.lang.*;

// Define a class named 'solution'.
class solution
{
// A method to print all subarrays with a sum of zero.
public static void print_all_Subarrays(int[] A)
{
// Create a list to store elements of subarrays.
List<Integer> llist = new ArrayList<Integer>();

// Iterate through the array.
for (int i = 0; i < A.length; i++)
{
int sum = 0;
llist.removeAll(llist);

// Nested loop to find subarrays starting from index i.
for (int j = i; j < A.length; j++)
{
sum += A[j];

// If the sum of the subarray is zero, print it.
if (sum == 0) {
System.out.println("Sub-arrays with 0 sum: " + llist.toString());
}
}
}
}

public static void main (String[] args)
{
// Define an array 'nums1'.
int[] nums1 = { 1, 3, -7, 3, 2, 3, 1, -3, -2, -2 };
System.out.println("\nOriginal array: " + Arrays.toString(nums1));

// Print all subarrays with a sum of zero for 'nums1'.
print_all_Subarrays(nums1);

// Define another array 'nums2'.
int[] nums2 = { 1, 2, -3, 4, 5, 6 };
System.out.println("\nOriginal array: " + Arrays.toString(nums2));

// Print all subarrays with a sum of zero for 'nums2'.
print_all_Subarrays(nums2);

// Define yet another array 'nums3'.
int[] nums3= { 1, 2, -2, 3, 4, 5, 6 };
System.out.println("\nOriginal array: " + Arrays.toString(nums3));

// Print all subarrays with a sum of zero for 'nums3'.
print_all_Subarrays(nums3);
}
}
```
```

Sample Output:

```
Original array: [1, 3, -7, 3, 2, 3, 1, -3, -2, -2]
Sub-arrays with 0 sum : [1, 3, -7, 3]
Sub-arrays with 0 sum : [3, -7, 3, 2, 3, 1, -3, -2]

Original array: [1, 2, -3, 4, 5, 6]
Sub-arrays with 0 sum : [1, 2, -3]

Original array: [1, 2, -2, 3, 4, 5, 6]
Sub-arrays with 0 sum : [2, -2]
```

Flowchart:

Java Code Editor:

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.

﻿