它反复地走訪过要排序的数列,一次比較两个元素,假设他们的顺序错误就把他们交换过来。走訪数列的工作是反复地进行直到没有再须要交换,也就是说该数列已经排序完毕。
冒泡排序算法的运作例如以下:(从后往前)比較相邻的元素。假设第一个比第二个大,就交换他们两个。
对每一对相邻元素作相同的工作,从開始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
针对全部的元素反复以上的步骤,除了最后一个。
持续每次对越来越少的元素反复上面的步骤,直到没有不论什么一对数字须要比較。
public static void bubbleSort() { int a[] = {28,27,26,25,24,23,22,21,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1}; int temp = 0; for (int i = 0; i < a.length - 1; i++) { for (int j = 0; j < a.length - 1 - i; j++) { if (a[j] > a[j + 1]) { temp = a[j]; a[j] = a[j + 1]; a[j + 1] = temp; } } for (int n = 0; n < a.length; n++) { System.out.print(a[n]+"、"); } System.out.println(); } for (int n = 0; n < a.length; n++) { System.out.print(a[n]+"、"); } }