Сравнение всех элементов массива - алгоритм C

У меня есть матрицаm * n и для каждой строки мне нужно сравнить все элементы среди них. Для каждой пары, которую я найду, я вызову функцию, которая будет выполнять некоторые вычисления.

Пример:

my_array -> {1, 2, 3, 4, 5, ...}

I take 1 and I have: (1,2)(1,3)(1,4)(1,5)
I take 2 and I have: (2,1)(2,3)(2,4)(2,5)
and so on

Используя C я написал это:

for (i=0; i<array_length; i++) {
    for (k=0; k<array_length; k++) {
        if (i==k) continue;

           //Do something
        }
    }
}

Мне было интересно, могу ли я использовать алгоритм с меньшей сложностью.

Ответы на вопрос(3)

Ваш ответ на вопрос