冒泡排序(Java版)
程序员文章站
2023-08-13 10:09:19
冒泡排序基本思想: 1.比较相邻的元素,如果第一个比第二个大,就交换它们两个。 2.对每一对相邻元素做同样的工作,从开始的第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 3.针对所有的元素重复以上的步骤,除了最后一个。 4.持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字 ......
冒泡排序基本思想:
1.比较相邻的元素,如果第一个比第二个大,就交换它们两个。
2.对每一对相邻元素做同样的工作,从开始的第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
3.针对所有的元素重复以上的步骤,除了最后一个。
4.持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
1 package cn.hst.hh; 2 3 import java.util.arrays; 4 5 /** 6 * 测试冒泡排序 7 * @author trista 8 * 9 */ 10 public class testbubblesort { 11 public static void main(string[] agrs) { 12 int[] values = {3,1,6,2,9,0,7,4,5,8}; 13 int temp = 0; 14 for(int i=values.length-1;i>0;i--) { 15 int count = 0; 16 boolean flag = true; 17 for(int j=0;j<i;j++) { 18 if(values[j]>values[j+1]) { 19 temp = values[j]; 20 values[j] = values[j+1]; 21 values[j+1] = temp; 22 flag = false; 23 } 24 count++; 25 } 26 if(flag) { //如果没有交换,则认为已经排好 27 break; 28 } 29 system.out.println(arrays.tostring(values)); 30 system.out.println("共"+count+"次"); 31 system.out.println("################"); 32 } 33 system.out.println(arrays.tostring(values)); 34 } 35 36 }