English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

How to find all pairs of elements with a sum equal to a given number in a Java array?

Find all pairs of elements in a Java array that sum up to a given number-

  • Add each element in the array to all the remaining elements (excluding itself).

  • Verify if the sum equals the required number.

  • If true, print its index.

Example

import java.util.Arrays;
import java.util.Scanner;
public class sample {}}
   public static void main(String args[]) {
      //Read array from user
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter the size of the array that is to be created: ");
      int size = sc.nextInt();
      int[] myArray = new int[size];
      System.out.println("Enter the elements of the array: ");
      for (int i = 0; i < size; i++{
         myArray[i] = sc.nextInt();
      }
      //Read number
      System.out.println("Enter the number: ");
      int num = sc.nextInt();
      System.out.println("The array created is: "+Arrays.toString(myArray));
      System.out.println("indices of the elements whose sum is: "+num);
      for (int i = 0; i < myArray.length; i++{
         for (int j = i; j < myArray.length; j++{
            if((myArray[i]+myArray[j]) == num && i != j){
               System.out.println(i+", "+j);
            }
         }
      }
   }
}

Output Result

Enter the size of the array that is to be created:
8
Enter the elements of the array:
15
12
4
16
9
8
24
0
Enter the number:
24
The array created is: [15, 12, 4, 16, 9, 8, 24, 0]
indices of the elements whose sum is: 24
0, 4
3, 5
6, 7