标签:分析 元素 扫描 空间复杂度 慢慢 pre ack color 排序
冒泡排序法又称为交换排序法,是由观察水中冒泡变化构思而成,气泡随着水深压力而改变.气泡在水底时,水压最大,气泡最小,而气泡慢慢浮上水面时,气泡所受压力最小,体积慢慢变大.
冒泡排序比较方式是从第一个元素开始,比较相邻的元素大小,如果大小顺序有误,则对调后进行下一个元素比较.直到所有元素满足关系为止.
代码示例:
import java.util.Random; /** * 算法大神之路----排序(冒泡排序法) */ public class Study01 { public static void main(String[] args) { //新建一个数组 int[] arr = new int[6]; Random r = new Random(); for (int i = 0; i < arr.length; i++) { //使用随机数给数组赋值 arr[i] = r.nextInt(50); } System.out.print("原数组为:"); paint(arr); System.out.println("-----排序-----"); //使用冒泡排序法进行排序,最差情况下 for (int i = arr.length-1; i >=0; i--) { //比较当前数和后一个数,谁大,谁放后面 for (int j = 0; j < i; j++) { if(arr[j]>arr[j+1]){ int temp=arr[j]; arr[j]=arr[j+1]; arr[j+1]=temp; } } System.out.print("扫描第"+(arr.length-i)+"次结果为:"); paint(arr); } } public static void paint(int[] arr){ for (int i = 0; i < arr.length; i++) { System.out.print(arr[i]+"\t"); } System.out.println(); } }
结果:
原数组为:34 41 24 36 15 21 -----排序----- 扫描第1次结果为:34 24 36 15 21 41 扫描第2次结果为:24 34 15 21 36 41 扫描第3次结果为:24 15 21 34 36 41 扫描第4次结果为:15 21 24 34 36 41 扫描第5次结果为:15 21 24 34 36 41 扫描第6次结果为:15 21 24 34 36 41
可见:
标签:分析 元素 扫描 空间复杂度 慢慢 pre ack color 排序
原文地址:http://www.cnblogs.com/wangxinblog/p/7341792.html