网友您好, 请在下方输入框内输入要搜索的题目:
题目内容
(请给出正确答案)
若对n个元素进行直接插入排序,在进行第i趟排序时,假定元素r[i+1]的插入位置为r[j],则需要移动元素的次数为()。
- A、 j-i
- B、 i-j-1
- C、 i-j
- D、 i-j+1
参考答案
更多 “若对n个元素进行直接插入排序,在进行第i趟排序时,假定元素r[i+1]的插入位置为r[j],则需要移动元素的次数为()。A、 j-iB、 i-j-1C、 i-jD、 i-j+1” 相关考题
考题
● 对具有n个元素的顺序表(采用顺序存储的线性表)进行 (40) 操作,其耗时与n的大小无关。(40)A.在第i(1≤i≤n)个元素之后插入一个新元素B.删除第i(1≤i≤n)个元素C.对顺序表中的元素进行排序D.访问第i(1≤i≤n)个元素的前驱和后继
考题
在下列对单链表进行的操作中,算法时间复杂度为O(n)的是()。
A、访问第i个元素的前驱(1B、在第i个元素之后插入一个新元素(1≤i≤n)C、删除第i个元素(1≤i≤n)D、对表中元素进行排序
考题
对具有n个元素的顺序表(采用顺序存储的线性表)进行( ) 操作,其耗时与n的大小无关。A.在第i(1≤i≤n)个元素之后插入一个新元素B.删除第i(1≤i≤n)个元素C.对顺序表中的元素进行排序D.访问第i(1≤i≤n)个元素的前驱和后继
考题
含有n个元素的线性表采用顺序存储方式时,对其运算速度最快的操作是(36)。A.访问第i个元素(l<i≤n)B.删除第i个元素(1≤j≤n)C.在第i个元素(1≤i≤n)之后插入一个新元素D.查找与特定值相匹配的元素
考题
第二题 阅读以下说明和代码,填补代码中的空缺,将解答填入答题纸的对应栏内。
【说明】
对n个元素进行简单选择排序的基本方法是:第一趟从第1个元素开始,在n个元素中选出最小者,将其交换至第一个位置,第二趟从第2个元素开始,在剩下的n-1个元素中选出最小者,将其交换至第二个位置,依此类推,第i趟从n-i+1个元素中选出最小元素,将其交换至第i个位置,通过n-1趟选择最终得到非递减排序的有序序列。 问题:2.1 【代码】
#include
void selectSort(int data[ ],int n)
//对 data[0]~data[n-1]中的n个整数按非递减有序的方式进行排列
{
int i,j,k;
int temp;
for(i=0;i for(k=i,j=i+1;(1);(2)) //k表示data[i]~data[n-1]中最小元素的下标
if(data[j] if(k!=i) {
//将本趟找出的最小元素与data[i]交换
temp=data[i]; (4) ;data[k]=temp;
}
}
}
int main()
{
int arr[ ]={79,85,93,65,44,70,100,57};
int i,m;
m=sizeof(arr)/sizeof(int); //计算数组元素的个数,用m表示
(5); //调用selectSort对数组arr进行非递减排序
for((6);i printf(“%d\t”,arr[i]);
printf(“\n”);
return 0;
}
考题
含有n个元素的线性表采用顺序存储方式时,对其运算速度最快的操作是( )。A.访问第i个元素(1≤i≤n)
B.删除第i个元素(1≤i≤n)
C.在第i个元素(1≤i≤n)之后插入一个新元素
D.查找与特定值相匹配的元素
考题
若某线性表长度为n且采用顺序存储方式,则运算速度最快的操作是(37)。A.查找与给定值相匹配的元素的位置
B.查找并返回第i个元素的值(1≤i≤n)
C. 删除第i个元素(1≤i≤n)
D.在第i个元素(1≤i≤n)之前插入一个新元素
考题
若某线性表长度为n且采用顺序存储方式,则运算速度最快的操作是
( )。A.查找与给定值相匹配的元素的位置
B.查找并返回第i个元素的值(1≤i≤n)
C.删除第i个元素(1≤iD.在第i个元素(1≤i≤n)之前插入一个新元素
考题
在有n个无序无重复元素值的数组中查找第i小的数的算法描述如下:任意取一个元素r,用划分操作确定其在数组中的位置,假设元素r为第k小的数。若i等于k,则返回该元素值;若i小于k,则在划分的前半部分递归进行划分操作找第i小的数;否则在划分的后半部分递归进行划分操作找第k-i小的数。该算法是一种基于()策略的算法。A、分治B、动态规划C、贪心D、回溯
考题
单选题若对n个元素进行直接插入排序,在进行第i趟排序时,假定元素r[i+1]的插入位置为r[j],则需要移动元素的次数为()。A
j-iB
i-j-1C
i-jD
i-j+1
热门标签
最新试卷