Pagini recente » Cod sursa (job #961942) | Cod sursa (job #134833) | 1234567890 | Rating agliochi (agliochi) | Cod sursa (job #1083278)
#include<fstream>
using namespace std;
int a[1000],n;
void m_heap(int n)
{
int k,x,j,i;
for(i=2;i<=n;i++)
if(a[i])
{
k=i;
x=a[k];
j=k/2;
while(k>1 && x>a[j])
{
a[k]=a[j];
k=j;
j=k/2;
if(j<1) j=1;
}
a[k]=x;
}
}
int main()
{
int i,e;
ifstream f( "algsort.in" );
ofstream g( "algsort.out" );
f>>n;
for(i=1;i<=n;i++)
{
f>>a[i];
}
m_heap(n);
for(e=n;e>=1;e--)
{
a[e]=a[1]+a[e]-(a[1]=a[e]);
if(e)
m_heap(e-1);
}
for(i=1;i<=n;i++)
g<<a[i]<<' ';
return 0;
}