更多"在有n个无序无重复元素值的数组中查找第i小的数的算法描述如下:任意取一"的相关试题:
[单项选择]环形队列用A[0]~A[19]存放其元素值,front指向队头元素的前一个位置,rear指向队尾元素。设front =4,rear= 17,现进行进队操作5次,出队操作3次,则front、rear的值依次变为()。
A. 7、2
B. 9、0
C. 7、22
D. 9、20
[单项选择]采用二分查找法,若当前取得的中间位置MID的元素值小于被查找值,则表明待查元素可能在表的后半部分,下次查找的起始位置通常应( )
A. 从MID/2位置开始
B. 从MID位置开始
C. 从MID-1位置开始
D. 从MID+1位置开始
[单项选择]设有n个元素的向量,逐个输入其中的元素值,建立一个有序单链表的时间复杂度是()
A. O(1)
B. O(n)
C. O(n2)
D. O(nlog2n)
[填空题]请填写下列空白以实现运行后形成一个主对角线上元素值为l,其他元素为0的6×6阶矩阵。
Private Sub Command1_Click( )
Dim s (6,6)
For i=1 To 6
For i=1 To 6
If i=j Then
______
Else
______
End If
Print______
Next j
Print
Next i
End Sub
[填空题]请填写下列空白,以实现运行后形成一个主对角线上元素值为1,其他元素为0的6×6阶矩阵。
Private Sub Command1 Click( )
Dim s(6,6)
For i=1 To 6
For j=1 To 6
If i=j Then
【 】
Else
【 】
End If
Print 【 】
Next j
Print
Next i
End Sub
[单项选择]循环队列用数组A[0..m-1]存放其元素值,已知其头尾指针分别为front和rear,则当前元素个数为______。
A. (rear-front+m) MOD m
B. rear-front+1
C. rear-front-1
D. rear-front
[填空题]以下函数用于求出一个2×4矩阵中的最大元素值。
max_value(arr)
int arr[][4];
{
int i,j,max;
max=arr[O][0];
for(i=0;i<2;i++)
for(j=0; 【18】 ;j++)
if( 【19】 >max)max= 【20】 ;
return(max);
}
[简答题]写出模板函数实现数值型数组元素值按从小到大排序的程序。
#include<iostream>
using namespace std;
______
void sort(T b[],int n)
T temp;
int i,j;
T*a=new T[n];
for(i=0;i<n;i++)
a[i]=b[i];
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(a[i]>a[j])
temp=a[i];
a[i]=a[j];
a[j]=temp;
for(i=0;i<n;i++)
cout<<a[i]<<" ";
cout<<endl;
delete a;
void main( )
int i,n=6;
int a[]=5,1,9,10,3,8;
sort______;
for(i=0;i<n;i++)
cout<<a[i]<<" ";
cout<<endl;
[单项选择]任意取大于1的奇数,各自平方,再从得到的数中减去1。例如:
    72-1=48
    112-1=120
    52-1=24
    92-1=80
    152-1=224.等等。从它们的得数中发现一个共同的性质,即每一个得数都能被8整除。用其他的奇数再进行几次尝试,也得到同样的结果。于是,我们就得出结论:“一切大于1的奇数的平方减去1,得到的数是8的倍数。”
    以上结论是根据哪种逻辑推理方法得出的( )
A. 演绎推理
B. 模态推理
C. 简单枚举归纳推理
D. 科学归纳推理
[简答题]输入一个5×5矩阵,分别求两条对角线元素值之和,并输出结果。(要求用循环结构实现)