对n个元素进行简单选择排序,一定会执行n-1趟。
对n个元素进行简单选择排序,一定会执行n-1趟。
参考答案和解析
n -1
相关考题:
第二题 阅读以下说明和代码,填补代码中的空缺,将解答填入答题纸的对应栏内。【说明】对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;}
关于冒泡排序的比较次数和排序趟数描述正确的是()。A、N个记录最多N-1趟排序即可完成B、N个记录最少比较N-1次,可完成排序,这是记录完全有序的情况C、N个记录最多比较N*(N-1)/2次可完成排序,这是记录完全逆序的情况D、在一趟排序中若无记录交换,就会停止排序
单选题对n个元素进行冒泡排序,要求按升序排列,程序中设定某一趟冒泡没有出现元素交换,就结束排序过程。对某n个元素的排序共进行了3n-6次元素间的比较就完成了排序,则()。A原序列是升序排列B原序列是降序排列C对序列只进行了2趟冒泡D对序列只进行了3趟冒泡
多选题关于冒泡排序的比较次数和排序趟数描述正确的是()。AN个记录最多N-1趟排序即可完成BN个记录最少比较N-1次,可完成排序,这是记录完全有序的情况CN个记录最多比较N*(N-1)/2次可完成排序,这是记录完全逆序的情况D在一趟排序中若无记录交换,就会停止排序
判断题对于具有n个元素的序列采用堆积排序法进行排序,排序的总趟数为n-1。A对B错