冒泡排序
冒泡排序
实现原理
它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。
这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。
实现代码
1 public class Paixu { 2 public static void main(String[] args) { 3 int[] a = {77,56,88,84,99,2,54}; 4 System.out.println(Arrays.toString(a)); 5 mp(a,7); 6 System.out.println(Arrays.toString(a)); 7 } 8 9 public static void mp(int[] a,int length) { 10 if(length==1){ 11 System.out.println("无需排序"); 12 }else { 13 for (int i = 0; i < a.length - 1; i++) { 14 for (int j = 0; j < a.length - 1 - i; j++) { 15 if (a[j] > a[j + 1]) { 16 int tmp = a[j]; 17 a[j] = a[j + 1]; 18 a[j + 1] = tmp; 19 } 20 } 21 } 22 } 23 } 24 }