最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
堆排序算法的过程演示
时间:2008-04-26 编辑:简简单单 来源:一聚教程网
/*
Name: heapsort2.c
Author: zhuqing
Description: 堆排序算法的过程演示
Date: 18-08-03 09:50
Copyright:
*/
#include
#define N 6
int k,j;
/* 建堆函数 */
void build(int *a,int i,int n){
int tmp;
k=i;
j=2*k+1;
while(j<=n){
if(j
if(a[k]>=a[j])break;
tmp=a[k];
a[k]=a[j];
a[j]=tmp;
k=j;
j=2*j+1;
}
}
/* 打印数组函数 */
void prnt(int *a,int n){
int i;
printf("n");
for(i=0;i
}
printf("n");
}
/* 打印堆函数 */
void prnthp(int *a,int b1,int b2){
int size;
int h=0,sum=0,item=1;
int i,j,cnt,start,tmp;
size=b2-b1+1;
while(sum<=size){
sum+=item;
h++;
item*=2;
}
item=1;
cnt=0;
start=b1;
tmp=1;
printf("n--------------------------------------------n");
printf(" 堆:n");
while(1){
for(i=0;i
-
上一个: 迷宫探路
相关文章
- word论文中的参考文献如何按照字母升序排序 07-20
- word姓氏笔画怎么排序 07-17
- 触漫app如何给画好的漫画排序 06-22
- Python实现选择排序的方法 06-07
- java 算法之希尔排序详解及实现代码 05-15
- java 算法之归并排序详解及实现代码 05-15