冒泡、选择、插入排序

public static void main(String[] args) {
int[] nums= {34,4,56,17,90,65};
chaRu(nums);

}
//冒泡排序
public static void maoPao(int[] x) {
int len=x.length;
for(int i=0;i<len-1;i++) {
for (int j=0;j<len-1-i;j++) {
if(x[j]>x[j+1]) {
x[j]=x[j+1]+x[j];
x[j+1]=x[j]-x[j+1];
x[j]=x[j]-x[j+1];
}

}

}
for(int k:x) {
System.out.println(k);
}
}
//选择排序法
public static void xuanZe(int[] x) {
int len=x.length;
int minIndex=0;
for(int i=0;i<len-1;i++) {
minIndex=i;
for(int j=i+1; j<len-i;j++) {
if(x[minIndex]>x[j]) {
minIndex=j;
}
}
if(minIndex!=i) {
x[minIndex]=x[i]+x[minIndex];
x[i]=x[minIndex]-x[i];
x[minIndex]=x[minIndex]-x[i];

}
}
for(int k:x) {
System.out.println(k);
}
}
//插入排序 从后向前找合适位置插入
public static void chaRu(int[] x) {
int len=x.length;
for(int i=1;i<len;i++) {
int temp=x[i];
int j=0;
for(j=i-1;j>=0;j--) {
if(x[j]>temp) {
x[j+1]=x[j];
}else {break;}
}
if(x[j+1]!=temp) {
x[j+1]=temp;
}
}
for(int k:x) {
System.out.println(k);
}

}

posted @ 2018-09-02 09:49  emma0804  阅读(169)  评论(0编辑  收藏  举报