/ 冒泡排序(BubbleSort)的基本概念是:依次比较相邻的两个数,将小数放在前面,
//大数放在后面, 由于在排序过程中总是小数往前放,大数往后放,相当于气泡往上升,
//所以称作冒泡排序
int a[]={1,4,6,8,2,3,0,34,12,99};
for(int i=0;i<a.length;i++){
for(int j=0;j<a.length-i-1;j++){
if(a[j+1]<a[j]){
a[j+1]=a[j+1]^a[j];
a[j]=a[j+1]^a[j];
a[j+1]=a[j+1]^a[j];
}
}
}
for(int i=0;i<a.length;i++){
System.out.print(a[i]+" ");
}
//选择排序:每一趟从待排序的数据元素中选出最小的一个元素,顺序放在
//已排好序的数列的最前面,直到全部待排序的数据元素排完
int b[]={1,4,6,8,2,3,0,34,12,99};
for(int i=0;i<b.length;i++ ){
for(int j=i+1;j<b.length;j++){
if(b[i]>b[j]){
b[i]=b[i]^b[j];
b[j]=b[i]^b[j];
b[i]=b[i]^b[j];
}
}
}
for(int i=0;i<b.length;i++){
System.out.print(b[i]+" ");
}
//插入排序:有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一
//个数,但要求插入后此数据序列仍然有序
int c[]={1,4,6,8,2,3,0,34,12,99};
int k,j,i;
for( i=0;i<c.length;i++){
k=c[i];
for( j=i-1;j>=0;j--){
if(c[j]>k){
c[j+1]=c[j+1]^c[j];
c[j]=c[j+1]^c[j];
c[j+1]=c[j+1]^c[j];
}
else
break;
a[j+1]=k;
}
}
for(int w=0;w<c.length;w++){
System.out.print(c[w]+" ");
}
}
}
//大数放在后面, 由于在排序过程中总是小数往前放,大数往后放,相当于气泡往上升,
//所以称作冒泡排序
int a[]={1,4,6,8,2,3,0,34,12,99};
for(int i=0;i<a.length;i++){
for(int j=0;j<a.length-i-1;j++){
if(a[j+1]<a[j]){
a[j+1]=a[j+1]^a[j];
a[j]=a[j+1]^a[j];
a[j+1]=a[j+1]^a[j];
}
}
}
for(int i=0;i<a.length;i++){
System.out.print(a[i]+" ");
}
//选择排序:每一趟从待排序的数据元素中选出最小的一个元素,顺序放在
//已排好序的数列的最前面,直到全部待排序的数据元素排完
int b[]={1,4,6,8,2,3,0,34,12,99};
for(int i=0;i<b.length;i++ ){
for(int j=i+1;j<b.length;j++){
if(b[i]>b[j]){
b[i]=b[i]^b[j];
b[j]=b[i]^b[j];
b[i]=b[i]^b[j];
}
}
}
for(int i=0;i<b.length;i++){
System.out.print(b[i]+" ");
}
//插入排序:有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一
//个数,但要求插入后此数据序列仍然有序
int c[]={1,4,6,8,2,3,0,34,12,99};
int k,j,i;
for( i=0;i<c.length;i++){
k=c[i];
for( j=i-1;j>=0;j--){
if(c[j]>k){
c[j+1]=c[j+1]^c[j];
c[j]=c[j+1]^c[j];
c[j+1]=c[j+1]^c[j];
}
else
break;
a[j+1]=k;
}
}
for(int w=0;w<c.length;w++){
System.out.print(c[w]+" ");
}
}
}