algoritmo rápido de encontrar somas no array

Eu estou procurando um algoritmo rápido:

Eu tenho uma matriz int de tamanho n, o objetivo é encontrar todos os padrões na matriz que
x1, x2, x3 are different elements in the array, such that x1+x2 = x3

Por exemplo, eu sei que há uma matriz int de tamanho 3 é[1, 2, 3] então há apenas uma possibilidade: 1 + 2 = 3 (considere 1 + 2 = 2 + 1)

Estou pensando em implementar Pares e Hashmaps para tornar o algoritmo rápido. (o mais rápido que eu tenho agora ainda éO(n^2))

Por favor, compartilhe sua ideia para este problema, obrigado

questionAnswers(3)

yourAnswerToTheQuestion