Ну, во-первых, это не действительно O (n 2 ).
Big-O показывает производительность алгоритма в худшем случаедает представление о том, как увеличивается время его выполнения с увеличением количества элементов, обрабатываемых алгоритмом.
В случае двумерной матрицы, хотя матрица действительно квадратная (или, по крайней мере,(прямоугольник), здесь не совсем уместно использовать длину матрицы как n
.Скорее, вы должны использовать количество ячеек в матрице (i
x j
).
Двумерная матрица, по сути, представляет собой массив массивов, и ваш алгоритм просто проходит по каждомуячейка один раз, делая его O (n) в обоих случаях.Вы могли бы сказать, что это O (i
x j
), но это все еще линейный алгоритм.