排序之冒泡排序

it2022-05-05  157

冒泡排序:以从小到大排序为例,数据两两比较,如果大,则交换,大的数据右移。直到选出最大的数据,以此类推。

举例:3,2,7,8,6

第一轮:

  第一次:3和2比较,3>2,3和2交换。

  2,3,7,8,6

  第二次:3和7比较,没有交换。

  第三次:7和8比较,不交换。

  第四次:8和6比较,交换。8冒出来了!

  2,3,7,6,8

第二轮:

  第一次:2和3比较,不交换

  第二次:3和7比较,不交换

  第三次:7和8比较,交换。7冒出来了!

  2,3,6,7,8

第三轮:

  第一次:2和3比较,不交换。

  第二次:3和6比较,不交换。6冒出来了!

第四轮:

  第一次:2和3比较,不交换。3冒出来了!

写成代码:

  我们需要两个变量:i和j。i控制轮数,j控制次数。

public static void main(String[] args){ int[] arr={3,2,8,5,6}; int max=0; for(int i=0;i<arr.length-1;i++){ for(int j=0;j<arr.length-1-i;j++){ if(arr[i]>arr[i+1]){ max=arr[i]; arr[i]=arr[i+1]; arr[i+1]=max; } } } System.out.println(Arrays.toString(arr)); }

 

 

转载于:https://www.cnblogs.com/LightmanLu/p/11168096.html


最新回复(0)