网友您好, 请在下方输入框内输入要搜索的题目:

题目内容 (请给出正确答案)
单选题
对n个元素值分别为-1、0或1的整型数组A进行升序排序的算法描述如下:统计A中-1、0和1的个数,设分别为n1、n2和n3,然后将A中的前n1个元素赋值为-1,第n1+1到n1+n2个元素赋值为0,最后n3个元素赋值为1。该算法的时间复杂度和空间复杂度分别为()。
A

Θ(n)和Θ(1)

B

Θ(n)和Θ(n)

C

Θ(n2)和Θ(1)

D

Θ(n2)和Θ(n)


参考答案

参考解析
解析: 本题需要用3个辅助变量n1、n2和n3来保存数组A中-1、0和1的个数,空间复杂度为Θ(1)。在统计时,需要使用一循环语句遍历数组A。统计完成后,再使用一次循环语句遍历数组A,并将A中的前n1个元素赋值为-1,第n1+1到n1+n2个元素赋值为0,最后n个元素赋值为1。数组A的元素个数为n,因此算法的时间复杂度为Θ(n)。
更多 “单选题对n个元素值分别为-1、0或1的整型数组A进行升序排序的算法描述如下:统计A中-1、0和1的个数,设分别为n1、n2和n3,然后将A中的前n1个元素赋值为-1,第n1+1到n1+n2个元素赋值为0,最后n3个元素赋值为1。该算法的时间复杂度和空间复杂度分别为()。A Θ(n)和Θ(1)B Θ(n)和Θ(n)C Θ(n2)和Θ(1)D Θ(n2)和Θ(n)” 相关考题
考题 对n个元素值分别为-1、0或1的整型数组A进行升序排序的算法描述如下:统计A中-1、0和1的个数,设分别为n1、n2和n3,然后将A中的前n1个元素赋值为-1,第n1+1到n1+n2个元素赋值为0,最后n3个元素赋值为1。该算法的时间复杂度和空间复杂度分别为()。 A.(n)和(1)B.(n)和(n)C.(n2)和(1)D.(n2)和(n)

考题 设有定义:int n1=0,n2,*p=n2,*q=n1;,以下赋值语句中与n2=n1;语句等价的是()。A)*p=*q; B)p=q;C)*p=n1; D)p=*q;

考题 设有定义:int n1=0,n2,*p=n2,*q=n1;,下列赋值语句中与n2=n1;语句等价的是 ( )。A.*p=*q;B.p=q;C.*p=n1;D.p=*q;

考题 在图示四个轴力N1、N2、N3和N4中,( )。:(A)N1和N2为正,N3和N4为负。(B)N1和N4为正,N2和N3为负。(C)N2和N3为正,N1和N4为负。(D)N3和N4为正,N1和N2为负

考题 当发生窗体的单击事件时,输出的第二行为( )。 Private Sub Form_click() Dim N1 As Integer,N2 As Integer,N3 As Integer N1=1:N2=1 Print N1;N2 Do N3=N1+N2 Print N3; N1=N2:N2=N3 Loop Until N3>=5 End SubA.1 1 1B.2 3 5C.2 5 7D.2 3 4

考题 函数swap(arr,n)可完成对arr数组从第1个元素到第n个元素两两交换。在运行调用函数中的语句后,a[0]和a[1]的值分别为【 】。a[0]=1;a[1]=2;swap(a,2);

考题 若长度为n的线性表采用顺序存储结构,在第i≤1≤i≤n+1) 个位置插入一个新元素的算法时间复杂度为(1)。A.O(0)B.O (1)C.O(n)D.O(n2)

考题 对n个基本有序的整数进行排序,若采用插入排序算法,则时间和空间复杂度分别为(62);若采用快速排序算法,则时间和空间复杂度分别为(63)。A.O(n2)和O(n)B.O(n)和O(n)C.O(n2)和O(1)D.O(n)和O(1)

考题 阅读下列说明和C代码,回答问题1至问题3,将解答写在答题纸的对应栏内。 【说明】 采用归并排序对n个元素进行递增排序时,首先将n个元素的数组分成各含n/2个元素的两个子数组,然后用归并排序对两个子数组进行递归排序,最后合并两个已经排好序的子数组得到排序结果。 下面的C代码是对上述归并算法的实现,其中的常量和变量说明如下: arr:待排序数组 p,q,r:一个子数组的位置从p到q,另一个子数组的位置从q+1到r begin,end:待排序数组的起止位置 left,right:临时存放待合并的两个子数组 n1,n2:两个子数组的长度 i,j,k:循环变量 mid:临时变量 【C代码】inciudestdio.h inciudestdlib.h define MAX 65536 void merge(int arr[],int p,int q,int r) { int *left, *right; int n1,n2,i,j,k; n1=q-p+1; n2=r-q; if((left=(int*)malloc((n1+1)*sizeof(int)))=NULL) { perror(malloc error); exit(1); } if((right=(int*)malloc((n2+1)*sizeof(int)))=NULL) { perror(malloc error); exit(1); } for(i=0;in1;i++){ left[i]=arr[p+i]; } left[i]=MAX; for(i=0; in2; i++){ right[i]=arr[q+i+1] } right[i]=MAX; i=0; j=0; for(k=p; (1) ; k++) { if(left[i] right[j]) { (2) ; j++; }else { arr[k]=left[i]; i++; } } } void mergeSort(int arr[],int begin,int end){ int mid; if( (3) ){ mid=(begin+end)/2; mergeSort(arr,begin,mid); (4) ; merge(arr,begin,mid,end); } }【问题1】 根据以上说明和C代码,填充1-4。 【问题2】 根据题干说明和以上C代码,算法采用了(5)算法设计策略。 分析时间复杂度时,列出其递归式位(6),解出渐进时间复杂度为(7)(用O符号表示)。空间复杂度为(8)(用O符号表示)。 【问题3】 两个长度分别为n1和n2的已经排好序的子数组进行归并,根据上述C代码,则元素之间比较次数为(9)。

考题 样本含量分别为n1和n2的两个小样本均数比较的t检验中,自由度等于A.n1 + n2 -2 B.n1 - n2 C.n1 + n2 -1 D.n1 + n2 E.(n1 + n2)/2

考题 在双标准纬线等角圆锥投影中,n1、n2分别为标准纬线φ1和φ2处的纬线长度比,选项正确的是()。A:n1>1,n2<1B:n1<1,n2>1C:n1<0,n2>0D:n1=1,n2=1

考题 对n个元素值分别为-1、0或1的整型数组A进行升序排序的算法描述如下:统计A中-1、0和1的个数,设分别为n1、n2和n3,然后将A中的前n1个元素赋值为-1,第n1+1到n1+n2个元素赋值为0,最后n3个元素赋值为1。该算法的时间复杂度和空间复杂度分别为()。A、Θ(n)和Θ(1)B、Θ(n)和Θ(n)C、Θ(n2)和Θ(1)D、Θ(n2)和Θ(n)

考题 设普通对称式圆锥齿轮差速器壳的转速为n0,左右两半轴的转速分别为n1、n2,则汽车转弯时有()A、n1=n2=n0B、n1=n2=2n0C、n1=n2=0.5n0D、n1+n2=2n0

考题 设对称式锥齿轮差速器壳的转速为n0,左、右两侧半轴齿轮的转速分别为n1和n2,则有()。A、n1+n2=n0B、n1+n2=2n0C、n1+n2=1/2n0D、n1=n2=n0

考题 在下列选项中,不正确的赋值语句是()。A、++tB、n1=(n2=(n3=0))C、k=i=jD、a=b+c=1

考题 在下列选项中,不正确的赋值语句是()A、t/=5;B、n1=(n2=(n3=0));C、k=i= = j;D、a=b+c=1;

考题 在对n个元素进行起泡排序的过程中,最好情况下的时间复杂度为:()A、.O(n3)B、O(n2)C、O(n)D、O(1)

考题 在对n个元素进行直接插入排序的过程中,算法的空间复杂度为()A、O(1)B、O(log2n)C、O(n2)D、O(nlog2n)

考题 设对称式锥齿轮差速器壳的转速为n0,左、右两侧半轴齿轮的转速分别为n1和n2,则有()A、n1+n2=n0B、n1+n2=2nC、n1+n2=1/2n0D、n1=n2=n0

考题 设对称式锥齿轮差速器壳的转速为n0,左、右两侧半轴齿轮的转速分别为n1和n2,则有()。A、n1+n2=n0B、n1+n2=2n0C、n1=n2=n0

考题 设有定义:intn1=0,n2,*p=n2,*q=n1;,以下赋值语句中与n2=n1;语句等价的是()A、*p=*q;B、p=q;C、*p=n1D、p=*q;

考题 设一维数组中有n个数组元素,则读取第i个数组元素的平均时间复杂度为()。A、O(n)B、O(nlog2n)C、O(1)D、O(n2)

考题 单选题设一维数组中有n个数组元素,则读取第i个数组元素的平均时间复杂度为()。A O(n)B O(nlog2n)C O(1)D O(n2)

考题 单选题设对称式锥齿轮差速器壳的转速为n0,左、右两侧半轴齿轮的转速分别为n1和n2,则有()。A n1+n2=n0B n1+n2=2n0C n1+n2=1/2n0D n1=n2=n0

考题 单选题在对n个元素进行起泡排序的过程中,最好情况下的时间复杂度为:()A .O(n3)B O(n2)C O(n)D O(1)

考题 单选题设对称式锥齿轮差速器壳的转速为n0,左、右两侧半轴齿轮的转速分别为n1和n2,则有()A n1+n2=n0B n1+n2=2nC n1+n2=1/2n0D n1=n2=n0

考题 单选题设对称式锥齿轮差速器壳的转速为n0,左、右两侧半轴齿轮的转速分别为n1和n2,则有()。A n1+n2=n0B n1+n2=2n0C n1=n2=n0