规则:
1.将数组氛围分为两个部分,无序部分和有序部分。无序部分在左边,有序部分在右边
2.使用窗口比较相邻元素,每次将数组无序部分的最大节点移动到有序部分的最左边,知道无序部分没有元素
3.最终形成左边小右边大的排序
选择排序、插入排序、冒泡排序复杂度的量级都是N2,这种方法的效率不如快速排序和归并排序。快速排序和归并排序的复杂度量级为log2n
public class maoPao {
public static void main(String[] args) {
int[] array={5,9,6,8,33,6,55,9,1,10,25,32};
maoPaoSort(array);
}
public static void maoPaoSort(int[] arr){
int length=arr.length;
for (int i=length-2;i>=0;i--){
for(int j=0;j<=i;j++){
if(arr[j]>arr[j+1]){
int tmp=arr[j+1];
arr[j+1]=arr[j];
arr[j]=tmp;
}
}
}
for (int tmp:arr){
System.out.print(tmp+" ");
}
}
}