我正在处理一些复杂的问题,而我知道这个很简单。我需要知道我发现的这个算法的复杂性是否做得好,如果没有,请有人帮我改正。
int algorithm(int x)
{
int y=1; 1
while(y<=x) x+1
{
int z=x-y; x
while(z>=1) x
{
z=z/5; x-1
}
y++; x
}
return 0;
}
我发现复杂度为 O(x) 阶。
任何帮助将不胜感激,谢谢。
最佳答案
你有 x 次主循环迭代
while(y<=x)
,并且在每个循环中你有 0..log(x) 次内部循环迭代
while(z>=1)
所以恕我直言,复杂度是 o(xlogx)
关于c - 需要帮助验证这种复杂性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22046790/