/**
* 1.1 冒泡排序: 在要排序的一组数中,对当前还未排好序的范围内的全部数,
* 自上而下对相邻的两个数依次进行比较和调整,较小的往上冒,较大的下沉.
*
* EX: int[] nums={8,1,4,2,23,10}; <
*
* 1,8,4,2,23,10
* 1,4,8,2,23,10
* 1,4,2,8,23,10
* 1,4,2,8,23,10
* 1,4,2,8,10,23
*
* 1,4,2,8,10,23
* 1,2,4,8,10,23
*
* 冒泡排序是一种稳定的排序方法.
* 若文件初状为正序,则一趟起泡就可完成排序,排序码的比较次数为n-1,且没有记录移动,时间复杂度是O(n);
* 若文件初态为逆序,需要n-1趟起泡,每趟进行n-i次排序码的比较,且每次比较都移动三次,比较和移动次数均达到最大值∶O(n2);
* 起泡排序平均时间复杂度为O(n2).
*/
public static void bubbleSort(int[] nums) {
for(int i=0;i<nums.length-1;i++){
for(int j=0;j<nums.length-1-i;j++){
int temp=0;
if(!(nums[j]<nums[j+1])){
temp=nums[j];
nums[j]=nums[j+1];
nums[j+1]=temp;
}
}
}
}