數組是一種數據結構,用來存儲同一類型值的集合。經過一個整型下標能夠訪問數組中的每個值。html
聲明數組的三種方式:java
// 方式一 int [] a = {2, 3, 5, 7, 11, 13}; // 方式二 int [] b = new int[]{17, 19, 23, 29, 31, 37}; // 方式三 int [] c = new int[100];
一旦建立了數組,就不能再改變它的大小。算法
採用優化的快速排序算法對數組進行排序。數組
示例:數據結構
int[] a = { 5, 7, 11, 2, 3, 13 }; System.out.println("排序前:" + Arrays.toString(a)); Arrays.sort(a); System.out.println("排序後:" + Arrays.toString(a));
輸出結果:優化
排序前:[5, 7, 11, 2, 3, 13] 排序後:[2, 3, 5, 7, 11, 13]
冒泡排序的基本思想是,對相鄰的元素進行兩兩比較,順序相反則進行交換,這樣,每一趟會將最小或最大的元素「浮」到頂端,最終達到徹底有序。spa
算法實現:code
public class Hello { public static void main(String[] args) { int[] a = { 7, 5, 13, 11, 2, 3 }; Hello.bubbleSort(a); } public static void bubbleSort(int[] a) { int temp = 0; for (int i = a.length - 1; i > 0; --i) { for (int j = 0; j < i; ++j) { if (a[j + 1] < a[j]) { temp = a[j]; a[j] = a[j + 1]; a[j + 1] = temp; } } System.out.println(i + ":" + Arrays.toString(a)); } } }
輸出結果:htm
5:[5, 7, 11, 2, 3, 13] 4:[5, 7, 2, 3, 11, 13] 3:[5, 2, 3, 7, 11, 13] 2:[2, 3, 5, 7, 11, 13] 1:[2, 3, 5, 7, 11, 13]