●对数据组R[1..n]中的n个元素进行排序的某一种方法描述如下:step1:令h=n;step2:进行h-1次比较,从R[1],R[2],…,R[h]中找出最大的元素R[i](1≤i≤h);step3:若i≠h,则交换R[i]和R[h] step4:令h=h-1;step5:若h=1,则排序完成,否则转向step2。对上述排序方法,下列选项中不正确的是 ()。()A.排序过程中,元素的交换次数至少为0次B.排序过程中,元素的交换次数至多为n-1次C.方法是稳定的D.方法是不稳定的
●对数据组R[1..n]中的n个元素进行排序的某一种方法描述如下:step1:令h=n;step2:进行h-1次比较,从R[1],R[2],…,R[h]中找出最大的元素R[i](1≤i≤h);step3:若i≠h,则交换R[i]和R[h] step4:令h=h-1;step5:若h=1,则排序完成,否则转向step2。对上述排序方法,下列选项中不正确的是 ()。()A.排序过程中,元素的交换次数至少为0次B.排序过程中,元素的交换次数至多为n-1次C.方法是稳定的D.方法是不稳定的
相关考题:
●试题一阅读下列算法说明和算法,将应填入(n)处的语句写在答题纸的对应栏内。【说明】为了减少直接插入排序关键字的比较次数,本算法使用了二分(折半)插入法对一个无序数组R[1..n]进行排序。排序思想是对一个待插入元素,先通过二分法(折半)找到插入位置,后移元素后将该元素插入到恰当位置(假设R[]中的元素互不相同)。【算法】1.变量声明X:DataTypei,j,low,high,mid,R0..n2.每循环一次插入一个R[i]循环:i以1为步长,从2到n,反复执行①准备X-R[i]; (1) ;high-i-1;②找插入位置循环:当 (2) 时,反复执行(3)若X.keyR[mid].key则high-mid-1否则 (4)③后移循环:j以-1为步长,从 (5) ,反复执行R[j+1]-R[j]④插入R[low]-X3.算法结束
阅读下列算法说明和算法,将应填入(n)处的语句写在对应栏内。【说明】为了减少直接插入排序关键字的比较次数,本算法使用了二分(折半)插入法对一个无序数组R[1..n]进行排序。排序思想是对一个待插入元素,先通过二分法(折半)找到插入位置,后移元素后将该元素插入到恰当位置。(假设R[]中的元素互不相同)[算法]1.变量声明X: Data Typei,j,low, high,mid,r:0..n2.每循环一次插入一个R[i]循环:i以1为步长,从2到n,反复执行。(1)准备X←R[i];(1); high←i-1;(2)找插入位置循环:当(2)时,反复执行。(3)若X.key<R[mid].key则high←mid-1;否则 (4)(3)后移循环:j以-1为步长,从(5),反复执行。R[j+1]←R[j](4)插入R[low]←X3.算法结束
对n个元素的有序表A[1..n]进行二分(折半)查找(除2取商时向下取整),查找元素A[i](1≤i≤n)时,最多与A中的(57)个元素进行比较。A.nB.[log2n]-1C.n/2D.[log2n]+1
●对n 个元素的有序表A[1..n]进行顺序查找,其成功查找的平均查找长度(即在查找表中找到指定关键码的元素时,所进行比较的表中元素个数的期望值)为__(58)。(58)A. nB. (n+1)/2C. lOg2 nD. n2
单选题对n个元素进行冒泡排序,要求按升序排列,程序中设定某一趟冒泡没有出现元素交换,就结束排序过程。对某n个元素的排序共进行了3n-6次元素间的比较就完成了排序,则()。A原序列是升序排列B原序列是降序排列C对序列只进行了2趟冒泡D对序列只进行了3趟冒泡
填空题对n个元素进行冒泡排序时,最少的比较次数是()