文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>堆排序

堆排序

时间:2010-09-03  来源:静止的流水

void maxheapify(int *data,int i){
    int left = 2*i;
    int right = 2*i+1;
    int largest;
    if(data[i]<data[left])
        largest = left;
    else
        largest = i;
    if(data[right]>data[largest])
        largest = right;
    if(largest!=i){
        int temp = data[i];
        data[i] = data[largest];
        data[largest] = temp;
    }
    maxheapify(data,largest);
}
void initheap(int *data,int len){
    for(int i = len/2;i>0;--i)
        maxheapify(data,i);
}
void heapsort(int *data,int len){
    initheap(data,len);
    for(int i = len-1;i>1;--i){
        int temp = data[0];
        data[0] = data[i];
        data[i] = temp;
        maxheapify(data,0);
    }
}


相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载