堆是一种有用的数据结构。堆排序是一种(1)排序,堆实质上是一棵(2)结点的层次序列。对含有n个元素的
堆是一种有用的数据结构。堆排序是一种(1)排序,堆实质上是一棵(2)结点的层次序列。对含有n个元素的序列进行排序时,堆排序的时间复杂度是(3),所需的附加存储结点是(4)。关键字序列05,23,16,68,94,72,71,73是否满足堆的性质(5)。【山东工业大学1996三、1(5分)】
堆是一种有用的数据结构。堆排序是一种(1)排序,堆实质上是一棵(2)结点的层次序列。对含有n个元素的序列进行排序时,堆排序的时间复杂度是(3),所需的附加存储结点是(4)。关键字序列05,23,16,68,94,72,71,73是否满足堆的性质(5)。【山东工业大学1996三、1(5分)】
第1题
②94,53,31,72,16,23 ③16,53,23,94,31,72 ④16,31,23,94,53,72 ⑤94,31,53,23,16,72堆排序是一种(1)类型的排序,它的一个基本问题是如何建堆,常用的建堆算法是1964年Floyd提出的(2),对含有n个元素的序列进行排序时,堆排序的时间复杂度是(3),所需要的附加结点是(4)。【山东工业大学1994一、2(5分
第5题
最大值。)【东南大学2005数据结构部分二、9(1分)】
第7题
为一个堆,注意:本算法不是完整的堆排序算法,仅将a变为堆顶元素具有最大值的“大堆”,是初始堆。 void adjust(in a[],int 13.) {int i, j, 8,x:; for(i=n/2;i>=1;i—-) {s=i;x=a[s]; for(j=2*s;j<:n;j*=2) {if(j<11&&a[j]<a[j+1]) (
第8题
ine 13.13.10 include<st:clio.h> int r[rm+1],r2[rm+1];//r[0]闲置 int a[10]={17,1,23,77,51,1_3,3 9,11,19,1 5); void merge(int r[], int low, int m, int high, int r2[] )
第9题
define n 10 int sDlit(int a[hi,int low,int high) {int j,k,x; k=low:J=high;x=a[k]; while(k<j) f while(a[j]>=x&&k<j)j一一; if(k<j) (a[k]=a[j]; k++} while (a[k]<=x&&k<j) k++;
第10题
次小的放在r[2]中,将次大的放在r[n一1]中,依次下去,直到待排序列为递增序。(注:<一>代表两个变量的数据交换)。【南京理工大学2001三、2(10分)】【中国海洋大学2007三(12分)】 void sort(SqList&r,int n) {i=1; While(f1) ) (min=max=i; for(J=i+1;(2) ;++j) {if((3)
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!