两个相同的for循环的时间复杂度是On而不是O2n为什么?

问题描述

我对时间复杂度的了解是,它测量了否。关于输入执行的操作的数量。 例如

code{

 for(int i=0;i<n;i++){     // n opertions
  print(array[i]);
 }

 for(int i=0;i<n;i++{      // n operations
  print(array[i}
 }
}

如果每个循环执行n次操作,则总数为n。执行的操作数将是2n对吗? 为什么不将其包括在时间复杂度中?我的意思是为什么在O(n)中忽略2而不是O(2n)

如果n = 5,则第一个for循环将执行5个操作,第二个将执行5个操作,因此总共将执行10个操作。 如果n = 10,则第一个循环将执行10个操作,第二个循环将执行10个操作,因此总共将执行20个操作,即2n。 以上没有无论您的计算机执行速度有多慢,操作数都不会改变。执行的操作数为2n。 然后我的问题是为什么用O(n)而不是O(2n)。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)