Я пытаюсь найти временную сложность простой реализации множества Мандельброта. со следующим кодом
int main(){
int rows, columns, iterations;
rows = 22;
columns = 72;
iterations = 28;
char matrix[max_rows][max_columns];
for(int r = 0; r < rows; ++r){
for(int c = 0; c < columns; ++c){
complex<float> z;
int itr = 0;
while(abs(z) < 2 && ++itr < iterations)
z = pow(z, 2) + decltype(z)((float)c * 2 / columns - 1.5,
(float)r * 2 / rows - 1);
matrix[r][c]=(itr== iterations ? '*' : '.');
}
}
Теперь, взглянув на приведенный выше код, я сделал некоторую оценку сложности времени в терминах большой O-нотации и хочу узнать, верна она или нет
Таким образом, мы создаем двумерный массив, проходящий через вложенные циклы, и на каждом элементе мы выполняем операцию и устанавливаем значение этого элемента, если мы принимаем n в качестве входного размера, мы можем сказать, что чем больше входное значение, тем больше будет будет сложность, поэтому временная сложность для строк xcolumns будет O (rxc), и затем мы снова пройдем ее для распечатки, так, какова будет временная сложность? это O (RXC) + O (RXC)? влияет ли сама функция на сложность времени, когда мы выполняем умножение и вычитание строк и столбцов? Если да, то как?