下面的算法是判断n是否素数,其时间复杂度应为()。 void prime(int n) { 判断n是否是素数 */ for
相似题目
-
直接选择排序算法在最好情况下的时间复杂度为O(n)。
-
3. 某算法的时间复杂度是O(n^2),表明该算法的( )。
-
若目标串的长度为n,模式串的长度为[n/3],则执行BF模式匹配算法时,在最坏情况下的时间复杂度是( )
-
【单选题】某算法的时间复杂度为O(n*n),表明该算法() 。 A. 问题规模为n*n B. 执行时间等于n*n C. 执行时间与n*n成正比 D. 问题规模与n*n成正比
-
7、下面的递归函数时间复杂度是O(1) int fact(int n) { if(n<=1)return 1; else return n*fact(n-1); }
-
某算法的时间复杂度是O(n^2),表明该算法的()。
-
假设某算法的计算时间可用递推关系式T(n)=2T(n/2)+n,T(1)=1表示,则该算法的时间复杂度为()A.O(lo
-
设A和B是两个单链表,其表中元素有序递增。请分析算法的时间复杂度。其时间复杂度为(40)。A.O(re+n-1
-
对一个算法的评价包括其正确性、时间复杂度和并行性等。 ()此题为判断题(对,错)。
-
试说明简单子串搜索算法在最坏情况下的计算时间复杂性为O(m(n-m+1)).
-
(1)试证明下面的算法Primality能以80%以上的正确率判定给定的整数n是否为素数.另一方面,举出
-
在具有n个数据元素的顺序表中,实现删除操作,其算法的时间复杂度是()
-
在n(n>1)个运算的顺序表中,算法时间复杂度为O(1)的运算是()。
-
某个算法的时间复杂度递归式T(n)=T(n-1)+n,其中n为问题的规模,则该算法的渐进时间复杂度为(),若问题的规模增加了16倍,则运行时间增加(请作答此空)倍。
-
在 n 个数的数组中确定其第 i(1 ≤ i ≤ n) 小的数时,可以采用快速排序算法中的划分思想 , 对 n 个元素划分,先确定第 k 小的数,根据 i 和 k 的大小关系 , 进一步处理,最终得到第 i 小的数。划分过程中,最佳的基准元素选择的方法是选择待划分数组的(此空作答 )元素。此时,算法在最坏情况下的时间复杂度为(不考虑所有元素均相等的情况)()
-
某算法的语句执行频度为(3n+nlog2n+n^2+8),其时间复杂度表示为 。
-
43、若对n个顶点,e条边且使用邻接表存储的有向图进行广度优先遍历,其算法的时间复杂度是()。
-
快速排序算法在排序过程中,在待排序数组中确定一个元素为基准元素,根据基准元素把待排序数组划分成两个部分,前面一部分元素值小于等于基准元素,而后面一部分元素值大于基准元素。然后再分别对前后两个部分进一步进行划分。根据上述描述,快速排序算法采用了()算法设计策略。已知确定基准元素操作的时间复杂度为Θ(n),则快速排序算法的最好和最坏情况下的时间复杂度为()
-
快速排序算法是,在排序过程中,在待排序数组中确定一个元素为基准元素,根据基准元素把待排序数组划分成两个部分,前面一部分元素值小于基准元素,而后面一部分元素值大于基准元素。然后再分别对前后两个部分进一步进行划分。根据上述描述,快速排序算法采用了 (请作答此空) 算法设计策略。已知确定着基准元素操作的时间复杂度为O(n),则快速排序算法的最好和最坏情况下的时间复杂度为 () 。
-
考查如教材76页代码3.14所示的List::deduplicate()算法。a)给出其中循环体所具有的不变性,并通过数学归纳予以证明;b)试举例说明,该算法在最好情况下仅需o(n)时间;c)试改进该算法,使其时间复杂度降至o(nlogn);d)o(nlogn)的效率是否还有改进的余地?为什么?
-
在无向连通图中,最长的通路称作其直径(diameter),试基于广度优先搜索的框架,设计并实现一个查找直径的算法,要求时间复杂度为o(n+e)。
-
某算法计算时间表示为递推关系式: T(N)=N+T(N/2) , 则该算法时间复杂度为()
-
设某算法的时间复杂度函数的递推方程是 T(n) = T(n - 1) + n(n 为正整数)及 T(0) = 1,则该算法的时间复杂度为()
-
对下面的程序段(冒泡排序算法): for(j=n-2;j>=0;j--) for(i=0;i<=j;i++) if(a[i]>a[i+1]) w=a[i],a[i]=a[i+1],a[i+1]=w; (1)计算时间复杂度T(n)和空间复杂度S(n)。 (2)计算对数组a[n]排序时,最多比较次数和交换次数,平均比较次数和比较次数。