📄 test12_2.cpp
字号:
//{ test12_2 }
#include"grary1.h"
const int n=15;
bb1 a;
GrpArr ag;
void sift(bb1& a,int i,int len)
{int j,x;
boolean suc;
unsigned char ss[20]="sift:root=";
unsigned char st[8]="";
Convs(i,st);
strcat(ss,st);
Statusline(ss);
j=2*i;
x=a[i];
suc=false;
while ( ___________________ )// {blank 3}
{ if ( (j+1<=len)&& (a[j]<a[j+1]) )
j=j+1;
if (a[j]>x)
{
move_elmn(ag,j,j/2,10+3*j);
__________________; //{Blank 4}
Wait();
}
else
______________ //{blank 5}
}
put_elmn(ag,j/2,x,0);
Wait();
}
void create_heap(bb1& a)
{int i;
for (____________________ )//{blank 6}
sift(a,i,n);
}
void Output_Root(bb1& a,int i)
{ unsigned char ss[20]="Output root:";
unsigned char st[8]="";
Convs(i,st);
strcat(ss,st);
Statusline(ss);
xchg_elmn(ag,i,1,-10-3*i);
cur_elmn_onoff(ag,i);
Wait();
}
void heapsort(bb1& a)
{
int i;
Clear_range(1,1,getmaxx(),getmaxy());
create_grp_Arrbb(ag,horizon,SubInc,true,a,"A",1,n);
initial_GrpArr(ag);
move_GrpArr_dxy(ag,-20,30);
create_heap(a);
move_GrpArr_dxy(ag,0,150);
for (i=n;i>=2;i--)
{
__________________;//{ blank 7}
Wait();
sift(a,1,i-1);
}
cur_elmn_onoff(ag,1);
Wait();
Clear_range(1,1,getmaxx(),getmaxy());
disp_Arrbb(a,1,n);
}
main()
{
rand_Arrbb(a,1,n,10,1000);
heapsort(a);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -