冒泡排序,简单来说就是一次次遍历数组,找到最大的一位存入最后。
思路:外层循环从1到n-1,内循环从当前外层的元素的下一个位置开始,依次和外层的元素比较,出现逆序就交换,通过与相邻元素的比较和交换来把小的数交换到最前面。
示意图:
实现代码:
1 for(int i=0;i<arr.length-1;i++){//外层循环控制排序趟数
2 for(int j=0;j<arr.length-1-i;j++){//内层循环控制每一趟排序多少次
3 if(arr[j]>arr[j+1]){
4 int temp=arr[j];
5 arr[j]=arr[j+1];
6 arr[j+1]=temp;
7 }
8 }
9 }