网友您好, 请在下方输入框内输入要搜索的题目:
题目内容
(请给出正确答案)
●下面算法是实现对n个整数的序列进行选择排序,其中序列的"长度"n为问题的规模。该算法的时间复杂度为 (23) 。
void select_sort(int a[],int n)
{
//将a中整数序列重新排列成从小到大有序的整数序列
for(i=0;i<n-1;++i){
j=i;
for(k=i+1;k<n;++k)
if(a[k]<a[j])j=k;
if(j!=i){w=a[j];a[j]=a[i];a[i]=w;}
}//select- sort
(23) A.O(n3)
B.O(n2)
C.O(n)
D.O(n4)
参考答案
更多 “ ●下面算法是实现对n个整数的序列进行选择排序,其中序列的"长度"n为问题的规模。该算法的时间复杂度为 (23) 。void select_sort(int a[],int n){//将a中整数序列重新排列成从小到大有序的整数序列for(i=0;in-1;++i){j=i;for(k=i+1;kn;++k)if(a[k]a[j])j=k;if(j!=i){w=a[j];a[j]=a[i];a[i]=w;}}//select- sort(23) A.O(n3)B.O(n2)C.O(n)D.O(n4) ” 相关考题
考题
编写算法,对n个关键字取整数值的记录序列进行整理,以使所有关键字为负值的记录排在关键字为非负值的记录之前,要求: ① 采用顺序存储结构,至多使用一个记录的辅助存储空间; ② 算法的时间复杂度为O(n)。
考题
下面算法是实现对n个整数的序列进行选择排序,其中序列的“长度”n为问题的规模。该算法的时间复杂度为(11)。 void select_sort(int a[],int n){ //将a中整数序列重新排列成从小到大有序的整数序列 for(i=0;i<n-1;++i){ j=i; for(k=i+1;k<n;++k)if(a[k]<a[j])j=k; if(j!=i){w=a[j];a[j];a[i];a[i]=w} )//select_sortA.O(n2)B.O(n3)C.O(n4)D.O(n)
考题
求解两个长度为n的序列X和Y的一个最长公共子序列(如序列ABCBDAB和BDCABA的一个最长公共子序列为BCBA)可以采用多种计算方法。如可以采用蛮力法,对X的每一个子序列,判断其是否也是Y的子序列,最后求出最长的即可,该方法的时间复杂度为( )。经分析发现该问题具有最优子结构,可以定义序列长度分别为i和j的两个序列X和Y的最长公共子序列的长度为c[i,j],如下式所示。
采用自底向上的方法实现该算法,则时间复杂度为(请作答此空)A.O(n^2)
B.O(n^21gn)
C.O(n^3)
D.O(n2^n)
考题
求解两个长度为n的序列X和Y的一个最长公共子序列(如序列ABCBDAB和BDCABA的一个最长公共子序列为BCBA)可以采用多种计算方法。如可以采用蛮力法,对X的每一个子序列,判断其是否也是Y的子序列,最后求出最长的即可,该方法的时间复杂度为(请作答此空)。经分析发现该问题具有最优子结构,可以定义序列长度分别为i和j的两个序列X和Y的最长公共子序列的长度为c[i,j],如下式所示。
采用自底向上的方法实现该算法,则时间复杂度为( )A.O(n^2)
B.O(n^21gn)
C.O(n^3)
D.O(n2^n)
考题
令n为问题规模,其中解决本问题的三个算法称为A,B,C,他们需要的总运算次数分别是: A: 96+108n+24n^2+12n^3 B: 16n+48n^3 C: 10080+168n+7n^2*log(n) 三个算法的时间复杂度的大O级别中,以下表述正确的有:A.A算法和B算法的时间复杂度相同B.B算法比A算法的时间复杂度更大C.C算法的时间复杂度最大D.C算法的时间复杂度最小E.A算法比B算法的时间复杂度更大
热门标签
最新试卷