How to find pairs in an array with a given difference N between them in Java

1 Answer

0 votes
import java.util.HashSet;
import java.util.Set;
 
public class MyClass {
    public static void findPairs(int[] arr, int diff) {
        Set<Integer> set = new HashSet<>();
  
        for (int i: arr) {
            if (set.contains(i - diff)) {
                System.out.println(i + ", " + (i - diff));
            }
  
            if (set.contains(i + diff)) {
                System.out.println((i + diff) + ", " + i);
            }
  
            set.add(i);
        }
    }
    public static void main(String args[]) {
        int[] arr = { 4, 1, 7, 5, 8, 6, 9, 10 };
        int diff = 3;
  
        findPairs(arr, diff);
    }
}
 
 
 
  
/*
run:
  
4, 1
7, 4
8, 5
9, 6
10, 7
  
*/

 



answered Jul 7, 2022 by avibootz
edited Jul 16, 2022 by avibootz
...