@Override public void merge(int i, int j) { for (int k = 0; k < i; k++) { proximity[index(i, k)] = (d(i, k) + d(j, k)) / 2 - d(j, i) / 4; } for (int k = i+1; k < j; k++) { proximity[index(k, i)] = (d(k, i) + d(j, k)) / 2 - d(j, i) / 4; } for (int k = j+1; k < size; k++) { proximity[index(k, i)] = (d(k, i) + d(k, j)) / 2 - d(j, i) / 4; } } }