void HeapSort(int a[],int size) { BuildHeap(a,size); for(int i=size-1;i>=0;i--) { swap(a,0,i); down(a,0,i); } } int main() { int n; cin>>n; int a[100]; for(int i=0;i<n;i++) cin>>a[i]; HeapSort(a,n); for(int i=0;i<n;i++) cout<<a[i]<<' '; cout<<endl; return 0; } 两段连起来为什么不对呢,运行错误,给50分,求帮忙看看 /(ㄒoㄒ)/~~
#include<iostream> using namespace std; void swap(int a[],int x,int y) { int t=a[x]; a[x]=a[y]; a[y]=t; } void down(int a[],int i,int n) { int parent=i; int child=2*i+1; while(child<n) { if(a[child]<a[child+1]&&child+1<n) child++; if(a[parent]<a[child]) { swap(a,parent,child); parent=child; } child=child*2+1; } } void BuildHeap(int a[],int size) { for(int i=size/2-1;i>=0;i--) down(a,i,size); }
【回文数(二)】 (C语言代码)浏览:940 |
C语言程序设计教程(第三版)课后习题11.5 (C语言代码)浏览:654 |
字符串问题 (C语言代码)浏览:1634 |
淘淘的名单 (C语言代码)答案错误???浏览:624 |
C语言程序设计教程(第三版)课后习题7.1 (C语言代码)浏览:1267 |
简单的for循环浏览:1496 |
1011题解浏览:819 |
C语言程序设计教程(第三版)课后习题12.3 (C语言代码)浏览:587 |
C语言程序设计教程(第三版)课后习题6.9 (C语言代码)浏览:609 |
简单的a+b (C语言代码)浏览:491 |