st0le
6/30/2013 - 1:50 AM

O(n^2) solution to 3SUM

O(n^2) solution to 3SUM

    // Complexity - O(n^2)
    private int[] findTriple_4(int[] A) {
        Arrays.sort(A);
        for (int i = 0,l = A.length; i < l; i++) {
            int left = i + 1, right = l - 1;
            while (left < right) {
                int s = A[i] + A[left] + A[right];
                if (s == 0)
                    return new int[]{A[i],A[left], A[right]};
                else if (s > 0)
                    right--;
                else
                    left++;
            }
        }
        return null;
    }