您的当前位置:首页正文

堆排序算法

2020-11-21 来源:保捱科技网
堆排序算法

#include #include using namespace std; #define MAXSIZE 100 typedef int KeyType; struct RedType { };

struct SqList { };

typedef SqList HeapType;

void Create(SqList &L,int n,RedType d[]) { }

void HeapTypeAdjust(HeapType &H,int s,int m) { }

void HeapSort(HeapType &H) {

int i;

for(i=H.length/2;i>0;i--)

HeapTypeAdjust(H,i,H.length); RedType rc=H.r[s]; int j;

for(j=2*s;j<=m;j*=2) { }

H.r[s]=rc;

if(jj++; break;

if(rc.key>=H.r[j].key) H.r[s]=H.r[j]; s=j; int i; L.r[0].key=0; for(i=1;i<=n;i++)

L.r[i]=d[i-1]; L.length=n;

RedType r[MAXSIZE+1]; int length; KeyType key;

}

for(i=H.length;i>1;i--) {

H.r[0]=H.r[1]; H.r[1]=H.r[i]; H.r[i]=H.r[0];

HeapTypeAdjust(H,1,i-1);

}

void Print(HeapType H) { }

int main() { }

RedType d[]={49,38,65,97,76,13,27,50}; int n=sizeof(d)/sizeof(d[0]); HeapType H; Create(H,n,d); Print(H); HeapSort(H); Print(H); fflush(stdin); getchar(); int i;

for(i=1;i<=H.length;i++)

cout<<\"H.r[\"<

因篇幅问题不能全部显示,请点此查看更多更全内容