public class MaoPao {
public static void main(String[] args) {
int[] iArr = new int[]{88,12,43,23,65};
for (int i = iArr.length-1; i >=0 ; i--) {
for(int j=0;j<i;j++) {
int temp = 0;
if(iArr[j]>iArr[j+1]) {
temp = iArr[j+1];
iArr[j+1] = iArr[j];
iArr[j] = temp;
}
}
}
for(int k:iArr) {
System.out.println(k);
}
}
public int[] maoPao(int[] iArr){
for (int i = iArr.length-1; i >=0 ; i--) {
for(int j=0;j<i;j++) {
int temp = 0;
if(iArr[j]>iArr[j+1]) {
temp = iArr[j+1];
iArr[j+1] = iArr[j];
iArr[j] = temp;
}
}
}
return iArr;
}
/**
* 这个方法比上面的方法效率要高一点
* 高在它的数组下标交换的次数最少
* @param a
* @return
*/
public int[] maoPao1(int[] a){
for(int i=0;i<a.length;i++){
int k=i;
for(int j=k+1;j<a.length;j++){
if(a[k]>a[j]){
k=j;
}
}
//如果k=i说明循环了一遍之后它是最小的
//所以它不用换位置,就在自己当前位置就是正确的
if(k!=i){
int temp=a[k];
a[k]=a[i];
a[i]=temp;
}
}
return a;
}
}
冒泡排序和二分法排序
最新推荐文章于 2023-02-08 17:06:53 发布