如何解决两个相同的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 举报,一经查实,本站将立刻删除。