假定对元素序列(7, 3, 5, 9, 1, 12)进行堆排序,并且采用小根堆,则由初始数据构成的初始堆为()。A、 1, 3, 5, 7, 9, 12B、 1, 3, 5, 9, 7, 12C、 1, 5, 3, 7, 9, 12D、 1, 5, 3, 9, 12, 7
假定对元素序列(7, 3, 5, 9, 1, 12)进行堆排序,并且采用小根堆,则由初始数据构成的初始堆为()。
- A、 1, 3, 5, 7, 9, 12
- B、 1, 3, 5, 9, 7, 12
- C、 1, 5, 3, 7, 9, 12
- D、 1, 5, 3, 9, 12, 7
相关考题:
{0、2、1、4、3、9、5、8、6、7}是以数组形式存储的最小堆,删除堆顶元素0后的结果是()A.{2、1、4、3、9、5、8、6、7}B.{1、2、5、4、3、9、8、6、7}C.{2、3、1、4、7、9、5、8、6}D.{1、2、5、4、3、9、7、8、6}
下面程序的结果为#includevoid main(){ int i;int a[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i 3;i++)cout }A.1 5 9B.7 5 3C.3 5 7D.5 9 1
若一组记录的排序码为(7,9,3,5,1,2,10),则利用堆排序的方法建立的初始堆为()A.10,7,9,3,5,1,2B.10,9,7,5,1,2,3C.10,9,7,5,3,2,1D.10,9,7,3,2,1,5
阅读以下说明和C代码,将应填入(n)处的字句写在对应栏内。【说明】将一正整数序列{K1,K2,…,K9}重新排列成一个新的序列,新序列中,比K1小的数都在K1的前面(左面),比K1大的数都在K1的后面(右面),最后调用writeDat()函数的新序列输出到文件out.dat中。在程序中已给出了10个序列,每个序列有9个正整数,并存入数组a[10][9]中,分别求出这10个新序列。例:序列{6,8,9,1,2,5,4,7,3}经重排后成为{3,4,5,2,1,6,8,9,7}【函数】include < stdio. h >include < conio. h >void jsValue( int a [10] [9] ){ int i,j,k,n,temp;int b[9];for(i=0;i<10;i++){ temp=a[i] [0];k=8;n=0;for(j=8;j=0;j--){ if(temp < a[i] [j]) (1)=a[i][j];if(temp >a[i] [j]) (2)=a[i][j];if(temp =a[i] [j]) (3)= temp;}for(j=0;j<9;j++) a[i][j] =b[j];}}void main( )int a[10] [9] = {{6,8,9,1,2,5,4,7,3},{3,5,8,9,1,2,6,4,7},{8,2,1,9,3,5,4,6,7}, {3,5,1,2,9,8,6,7,4},{4,7,8,9,1,2,5,3,6}, {4,7,3,5,1,2,6,8,9},{9,1,3,5,8,6,2,4,7}, {2,6,1,9,8,3,5,7,4},{5,3,7,9,1,8,2,6,4}, {7,1,3,2,5,8,9,4,6}};int i,j;(4);for(i=0;i<10;i++) {for(j=0;j<9;j++) {printf("%d",a[i] [j] );if((5))printf(",");}printf(" \n" );}getch( );}
当执行下面的语句定义一维数组a后,此数组的所有元素为 ( ) inta[10];A.a[1],a[2],a[3],a[4],a[5],a[6],a[8],a[9],a[10],a[10]B.a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9]C.a[0],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10]D.a[1],a[2],a [3],a[4],a [5],a [9],a [7],a [8],a [9],a [10],a [11]
下列程序的功能是:将一个正整数序列{K1, K2,…, K9}重新排列成一个新的序列。在新序列中,比K1小的数都在K1的前面(左面),比K1大的数都在K1的后面(右面)。要求编写函数jsValue()实现以上功能,最后调用函数writeDat(),将新序列输出到文件out.dat中。说明:程序中已给出了10个序列,每个序列中有9个正整数,并存入数组a[10][9] 中,分别求出这10个新序列。例如:序列{6, 8, 9, 1, 2, 5, 4, 7, 3}重排后为{3, 4, 5, 2, 1, 6, 8, 9, 7}。部分源程序已给出。请勿改动主函数main() 和写函数writeDat() 的内容。#includestdio.hvoid jsValue(int a[10][9]){ } void main(){ int a[10][9]={{6,8,9,1,2,5,4,7,3} {3,5,8,9,1,2,6,4,7} {8,2,1,9,3,5,4,6,7} {3,5,1,2,9,8,6,7,4} {4,7,8,9,1,2,5,3,6} {4,7,3,5,1,2,6,8,9} {9,1,3,5,8,6,2,4,7} {2,6,1,9,8,3,5,7,4} {5,3,7,9,1,8,2,6,4} {7,1,3,2,5,8,9,4,6} }; int i,j; jsValue(a); for(i=0;i10;i++){ for(j=0;j9;j++) { printf("%d",a[i][j]); if(j=7) printf(","); } printf("\n");}writeDat(a);}void writeDat(int a[10][9]){ FILE *fp; int i,j; fp=fopen("out.dat","w"); for(i=0;i10;i++){ for(j=0;j9;j++){ fprintf(fp,"%d",a[i][j]); if(j=7) fprintf(fp,","); } fprintf(fp,"\n");} fclose(fp);}
设有初始序列(8,5,2,12,7,1,6,10,9,3,4,11),排序后产生新序列(4,5,2, 3,7,1,6,8,9,10,12,11),问采用的是下列哪一个排序算法一趟扫描的结果?( )A.堆排序B.初始步长为4的希尔排序C.二路归并排序D.以8为分界元素的快速排序
● 假设有 8 个记录,它的初始关键字序列为{5,7,3,8,2,9,1,4},用冒泡排序对它进行排序,第5次排序结果为 (44) 。(44)A. 5,3,7,2,8,1,4,9B. 2,1,3,4,5,7,8,9C. 3,2,5,1,4,7,8,9D. 1,2,3,4,5,7,8,9
二维数组初始化正确的是()A、intarr[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};B、intarr[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};C、intarr[][4]={1,2,3,4,5,6,7,8,9,10,11,12};D、intarr[3][4]={{1,2,3},{4,5},{6}};
假定一个初始堆为(1, 5, 3, 9, 12, 7, 15, 10),则进行第一趟堆排序后得到的结果为()。A、 3, 5, 7, 9, 12, 10, 15, 1B、 3, 5, 9, 7, 12, 10, 15, 1C、 3, 7, 5, 9, 12, 10, 15, 1D、 3, 5, 7, 12, 9, 10, 15, 1
对下列四个序列进行快速排序,各以第一个元素为基准进行第一次划分,则在该次划分过程中需要移动元素次数最多的序列为()A、 1, 3, 5, 7, 9B、 9, 7, 5, 3, 1C、 5, 3, 1, 7, 9D、 5, 7, 9, 1, 3
F12L413柴油机的发火顺序是()。A、1-5-3-8-10-7-6-11-2-9-4-12B、1-8-5-10-3-7-6-11-2-9-4-12C、1-10-3-8-7-11-6-9-2-4-12-5D、1-8-5-10-7-3-6-11-2-9-4-12
道依茨柴油机BF12L513C各缸的发火顺序是()。A、1-5-3-8-10-7-6-11-2-9-4-12B、1-8-5-10-3-7-6-11-2-9-4-12C、1-10-3-8-7-11-6-9-2-4-12-5D、1-8-5-10-7-3-6-11-2-9-4-12
EQ1090点火顺序为1、5、3、6、2、4的汽油发动机采取两次调校气门法时,即第一缸和第六缸活塞处于压缩行程上止点时分别调()。A、1、2、3、5、7、9和4、6、8、10、11、12B、1、2、3、6、8、9和4、5、7、10、11、12C、1、2、4、5、8、9和3、6、7、10、11、12D、1、2、3、7、8、9和4、5、6、10、11、12
单选题对下列四个序列进行快速排序,各以第一个元素为基准进行第一次划分,则在该次划分过程中需要移动元素次数最多的序列为()A 1, 3, 5, 7, 9B 9, 7, 5, 3, 1C 5, 3, 1, 7, 9D 5, 7, 9, 1, 3
单选题设数据集合为D={1,3,5,7,9},D上的关系为R,下列数据结构B=(D,R)中为非线性结构的是( )。AR={(5,1),(7,9),(1,7),(9,3)}BR={(9,7),(1,3),(7,1),(3,5)}CR={(1,9),(9,7),(7,5),(5,3)}DR={(1,3),(3,5),(5,9),(7,3)}
单选题假定一个初始堆为(1, 5, 3, 9, 12, 7, 15, 10),则进行第一趟堆排序后得到的结果为()。A 3, 5, 7, 9, 12, 10, 15, 1B 3, 5, 9, 7, 12, 10, 15, 1C 3, 7, 5, 9, 12, 10, 15, 1D 3, 5, 7, 12, 9, 10, 15, 1