【发布时间】:2021-03-10 16:49:03
【问题描述】:
我目前正在为一个有时间复杂度限制的学校项目工作。我还在开始学习编程,所以对这个问题道歉是愚蠢的。
基本上,假设我有一个约束,即我的程序必须满足时间复杂度 O(n^2 + mlogm),其中 n 和 m 是一些输入大小。这是否意味着这是我的程序的任何特定组件可以运行的最大时间复杂度?也就是说,如果我有很多,比如说,O(n^2 + m) 函数,但最复杂的函数在 O(n^2 + mlogm) 中运行,我还能满足这个时间限制吗?例如,如果我的程序按顺序运行以下函数
函数A
函数B
函数C
功能D
而函数A,B,C都是O(n^2 + m)或者小于时间复杂度约束的东西,但是最后一个函数是O(n^2 + mlogm),请问我的程序在时间之内约束?对于整体复杂性来说,这不是 O(n^2 + m ^ n^2 + m ^ n^2 + m + n^2 + mlogm) 吗?
我仍在学习时间复杂度,因此非常感谢您对此提供任何帮助。非常感谢。
【问题讨论】:
-
会参考这个time-complexity cheat-sheet,或者更好的是,这个more general discussion about time-complexity 帮助?
-
@ryyker 没有看到一般性的讨论,这正是我需要的。谢谢!
标签: c time time-complexity