Pagini recente » Cod sursa (job #3005365) | Cod sursa (job #293291) | Cod sursa (job #136188) | Cod sursa (job #391673) | Cod sursa (job #1020777)
# include <fstream>
# define dim 500000
using namespace std;
ifstream fin("algsort.in");
ofstream fout("algsort.out");
int v[dim],N;
void swap1( int &x , int &y )
{
int aux;
aux = x;
x = y;
y = aux;
}
void algsort()
{
// insertie cu ajutorul cautarii binare
int i,sp,val,m,s,d;
for( i = 1 ; i < N ; ++i )
{
val = v[i];
s = 0;
d = i-1;
while( s <= d )
{
m = (s+d)/2;
if( v[m] > val ) d = m-1;
else s = m+1;
}
for( sp = i ; sp > s ; --sp )
v[sp] = v[sp-1];
v[sp] = val;
}
}
int main(){
int i;
fin >> N;
for( i = 0 ; i < N ; ++i )
fin >> v[i];
algsort();
for( i = 0 ; i < N ; ++i )
fout << v[i] << ' ';
fin.close();
fout.close();
return 0;
}