#include <iostream>
using namespace std;
#define siz 1000000
int a[siz];
void swap(int a[], int i, int j){
int temp=a[i];
a[i]=a[j];
a[j]=temp;
}
void brickSort(int a[], int n){
bool sorted=false;
while(sorted!=true){
sorted=true;
for(int i=1;i<n-1;i+=2){
if(a[i]>a[i+1]){
swap(a,i,i+1);
sorted=false;
}
}
for(int i=0;i<n-1;i+=2){
if(a[i]>a[i+1]){
swap(a,i,i+1);
sorted=false;
}
}
}
for(int i=0;i<n;i++) cout<<a[i]<<endl;
}
int main()
{
int n;
while(cin>>n){
for(int i=0;i<n;i++) cin>>a[i];
brickSort(a,n);
}
return 0;
}
Friday, November 2, 2012
Brick Sort
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment