我用帕斯卡做了这些。
Proceure Max_Heapify(a:Table;i:longint);
var tmp,l,r,k:longint;
begin
l:=2*i;
r:=2*i+1;
if (heapsize>=l)and(a[i]<a[l]) then k:=l else k:=i;
if (heapsize>=r)and(a[i]<a[r]) then k:=r;
if k<>i then
begin
swap(a[i],a[k]);
Max_Heapify(a,k);
end;
end;
我用帕斯卡写了这个程序,但它似乎不起作用,我无法弄清楚有什么问题可以帮助我吗?谢谢