【发布时间】:2011-03-11 10:43:57
【问题描述】:
对不起,如果这是一个愚蠢的问题,但是......
这段代码的复杂度顺序是O(n):
char buf[] = "hello world";
size_t length = strlen(buf);
for(size_t i = 0; i < length; i++)
{
//do stuff
}
这段代码是O(n^2):
char buf[] = "hello world";
for(size_t i = 0; i < strlen(buf); i++)
{
//do stuff
}
因为 strlen 是 O(n)。
但是谁说strlen是O(n),标准里有定义吗,一定是O(n)吗?
我如何确定知道任何标准函数的复杂度顺序是多少?
【问题讨论】:
标签: c++ complexity-theory