设为首页 加入收藏

TOP

C++实现堆排序代码
2017-10-27 09:06:51 】 浏览:267
Tags:实现 排序 代码

C++实现堆排序代码

c++代码:

#include
  
    
using namespace std;

const int maxn = 10;
int a[maxn];

void heap_adjust(int a[], int k, int n){
    int tmp=a[k];
    for(int i=k*2; i<=n; i*=2){
        if(i
   
    a[k]))break; a[k]=a[i]; k=i; } a[k]=tmp; } int main(){ //freopen("F://inp.txt","r",stdin); int n; while(cin>>n){ for(int i=1; i<=n; i++){ cin>>a[i]; } for(int i=n/2; i>0; i--){ heap_adjust(a,i,n); } for(int i=n; i>1; i--){ int tmp=a[1]; a[1]=a[i]; a[i]=tmp; heap_adjust(a,1,i-1); } for(int i=1; i<=n; i++) cout<
    
   
  
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇用C++递归将循环链表的unique dat.. 下一篇C++开发单例模式解析

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目