作业2-算法的时间复杂度和空间复杂度
一、判断题

解析
1-1 记住即可
1-2前者明显大于后者
1-3N>2时后者快;N<2时前者快
1-6太绝对了
1-7 知乎大佬帮忙解答
二、选择题

N大于等于(y+1)^2; 则y小于等于N^0.5-1; 时间复杂度为n^(1/2)

2-3
下列函数
int func ( int n )
{ int i = 0, sum = 0;
while ( sum < n ) sum += ++i;
return i;
}
的时间复杂度是:B
A.O(logn)
B.O(n1/2 )
C.O(n)
D.O(nlogn)
sum+=++i 也就是 ++i; sum=sum+i ,进行的第K趟循环,sum=(1+k)*k/2 也就是需要进行O(n^0.5)趟循环
此为复杂度

外层为N,内层为logN,总复杂度为NlogN

2-6
要判断一个整数N(>10)是否素数,我们需要检查3到√N 之间是否存在奇数可以整除N。则这个算法的时间复杂度是:B
A.O(N/2)
B.O(√N )
C.O(√N logN)
D.O(0.5logN)



算法时间与空间复杂度作业解析
该博客围绕作业2,对算法的时间复杂度和空间复杂度相关题目进行解析。包含判断题和选择题,如判断不同情况下算法速度快慢,以及计算多个选择题中算法的时间复杂度,像得出部分算法时间复杂度为n^(1/2)、NlogN等。
3131

被折叠的 条评论
为什么被折叠?



