冒泡排序
package com.jx.p2p.service;
public class MaoPao {
public static void maopaoMethod(int[] msgs){
//进行冒泡排序 从小到大
int len = msgs.length;
for(int i=0;i<len-1;i++){//循环过程中并没有直接使用到此(外层循环),此外层循环的作用是为了指示内层的循环
for(int j=0;j<len-i-1;j++){//通过上面的外层循环i,当i=3时表示:已经经过3次遍历、那么内层循环中就不再需要对数组中后三个数字进行处理,因为后三个数字就是最大的数字
//紧挨数字比较x>y,x大的后移,x移后再比x>m,x大的再后移。内层循环一次,找到最大的数字并放在最右侧,下次循环就不需要对此数进行比较即可。
if(msgs[j]>msgs[j+1]){
int temp = msgs[j];
msgs[j]=msgs[j+1];
msgs[j+1]=temp;
}
}
}
System.out.println("冒泡排序结果是:");
for(int item:msgs){
System.out.println(item);
}
}
public static void main(String[] args) {
int[] tempArray = new int[]{65,56,45,89,87,12,34,15};
maopaoMethod(tempArray);
}
/** 一次循环找最大或最小
* 56;45;65;87;12;34;15; 89;-----一次排序:
45;56;65;12;34;15; 87;89;-----一次排序:
45;56;12;34;15; 65;87;89;-----一次排序:
45;12;34;15; 56;65;87;89;-----一次排序:
12;34;15; 45;56;65;87;89;-----一次排序:
12;15; 34;45;56;65;87;89;-----一次排序:
12; 15;34;45;56;65;87;89;
*/
}