Pagini recente » Cod sursa (job #2259810) | Cod sursa (job #2259835) | Cod sursa (job #3207669) | Cod sursa (job #535330) | Cod sursa (job #645363)
Cod sursa(job #645363)
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
int s[100];
int part(int i,int j)
{int md=(i+j)/2;
int a=i,b=j,aux;
while(a<=b)
{while(s[a]<s[md]) a++;
while(s[md]<s[b]) b--;
if(a<=b)
{aux=s[a];
s[a]=s[b];
s[b]=aux;
a++;
b--;
}
}
return a;
}
void quicks(int i,int j)
{if(i>=j) return;
int p=part(i,j);
if(i<p-1) quicks(i,p-1);
if(p<j) quicks(p,j);
}
int main()
{int n;
cin>>n;
for(int i=1;i<=n;i++)
cin>>s[i];
quicks(1,n);
for(int i=1;i<=n;i++)
cout<<s[i]<<" ";
getch();
return 0;
}