Pagini recente » Cod sursa (job #1636928) | Cod sursa (job #1410990) | Cod sursa (job #950893) | Cod sursa (job #2064434) | Cod sursa (job #3208993)
#include<iostream>
using namespace std;
int n,v[101],g[101]={}; /// {} ??
/// spatii intre operatori
void merge_sort(int s[], int st, int dr)
{
if(st>=dr)
return;
int mij=(st+dr)/2;
merge_sort(s,st,mij);
merge_sort(s,mij+1,dr);
int i=st;
int j=mij+1;
int k=0;
while(i<=mij && j<=dr)
{
if(v[i]<v[j])
g[++k]=v[i],i++;
else
g[++k]=v[j],j++;
}
while(i<=mij)
g[++k]=v[i],i++;
while(j<=dr)
g[++k]=v[j],j++;
for(i=st,j=1;i<=dr;i++,j++)
s[i]=g[j];
}
int main()
{
int i;
cin>>n;
for(i=1;i<=n;i++)
cin>>v[i];
merge_sort(v,1,n);
for(i=1;i<=n;i++)
cout<<v[i]<<" ";
return 0;
}