n个顶点e条边的图采用邻接矩阵存储,广度优先遍历算法的时间复杂度为();若采用邻接表存储,该算法的时间复杂度为()。
n个顶点e条边的图采用邻接矩阵存储,深度优先遍历算法的时间复杂度为();若采用邻接表存储时,该算法的时间复杂度为()。
设S为C语言的语句,计算机执行下面算法时,算法的时间复杂度为()。for(i=n-1;i>=0;i--)for(j=0;j
快速排序算法的平均时间复杂度为()。
设语句x++的时间是单位时间,则以下语句的时间复杂度为()。 for(i=1;i<=n;i++) for(j=i;j<=n;j++) x++;
在长度为n的顺序表中,求第i个元素的直接前驱算法的时间复杂度为0。
对n个元素值分别为-1、0或1的整型数组A进行升序排序的算法描述如下:统计A中-1、0和1的个数,设分别为n1、n2和n3,然后将A中的前n1个元素赋值为-1,第n1+1到n1+n2个元素赋值为0,最后n3个元素赋值为1。该算法的时间复杂度和空间复杂度分别为()。
1. 编写算法,对 n 个关键字取整数值的记录序列进行整理,以使所有关键字为负值的记录排在关键字为非负值的记录之前,要求: (1) 采用顺序存储结构,至多使用一个记录的辅助存储空间; (2) 算法的时间复杂度为 O(n); void Divide(int a[ ],int n)// 把数组 a 中所有值为负的记录调到非负的记录之前 { low=0;high=n-1; while ( ) { while(low=0) high--; // 以 0 作为虚拟的枢轴记录 a[low]
1.编写算法,对n个关键字取整数值的记录序列进行整理,以使所有关键字为负值的记录排在关键字为非负值的记录之前,要求:(1)采用顺序存储结构,至多使用一个记录的辅助存储空间;(2)算法的时间复杂度为O(n);void Divide(int a[ ],int n)//把数组a中所有值为负的记录调到非负的记录之前{low=0;high=n-1;while( ){while(low=0) high--; //以0作为虚拟的枢轴记录a[low]a[high];while(lowa[high];}}//Divide
求以下算法的时间复杂度 x=n; //n>1 y=0; while (y
12、下面算法的时间复杂度为()。 x=100; y=100; while(y>0) if(x>100) {x=x-10; y--;} else x++;
希尔排序算法的时间复杂度为O()
下面算法的时间复杂度为()。 for(i=0;i<m;i++) for(j=0;j<n;j++) A[i][j]=i*j;
算法的时间复杂性T(n),可以通过计算算法基本语句的执行次数来获得。分析下列程序的时间复杂性。 (10) K = 0; (20) I = 2; (30) While (I<=8) (40) { k="K" + i; (50) i="I" 2;}> A、O(n);
折纸问题算法的代码如下:问该算法的时间复杂度是()void main(){float h=0.0002;int count=0;while(h<=8848.43){h=h*2;count++;}printf("\n共计折了%d次可超过珠峰的高度!\n",count);}
【多选题】下面那些算法的时间复杂度为O(n2)
设语句x++的时间是单位时间,则以下语句的时间复杂度为()。 for(i=1;i<=n;i++) for(j=i;j<=n;j++) x++;
某个算法的时间复杂度递归式T(n)=T(n-1)+n,其中n为问题的规模,则该算法的渐进时间复杂度为(),若问题的规模增加了16倍,则运行时间增加(请作答此空)倍。
14、某算法的时间复杂度为O(n2)。若该算法在规模为n的数据集上,运行时间为10秒;如果数据规模扩大为2n,该算法大约需要运行()
试编写一个算法,将元素序列(x1,x2,…,xn)循环右移p个位置,0≤p≤n。要求该算法的时间复杂度为O(n)而空间复杂度为O(1)。
编写一个递归算法,从大到小输出二叉搜索树中所有值不小于x的关键码。要求算法的时间复杂度为O(log<sub>2</sub>n+m),n为树中结点数,m为输出的关键码个数。
求最短路径的Floyd算法的时间复杂度为().
12、以下算法的功能是在一个非递减的顺序存储线性表中,删除所有值相等的多余元素。时间复杂度为O(n),空间复杂度为O(1)。划线部分应填入的语句是()。 void DelRepeatData(SeqList *L) { i=0; j=1; while(j<=L->last) { if(L->elem[i]==L->elem[j]) ; else { L->elem[i+1]=L->elem[j]; i++; j++; } } L->last=i; }
11、在数组A[0..n-1]中查找给定值K的算法大致如下: i=n-1; while(i>=0 && (A[i]!=k)) i--; return i; 该算法的时间复杂度为()。