色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java 冒泡排序和選擇排序的區(qū)別

錢諍諍1年前8瀏覽0評論

Java 冒泡排序和選擇排序是兩種非常常用的排序算法。這兩種算法都有各自的特點,適用于不同類型的數據。

// Java 冒泡排序代碼
public static void bubbleSort(int[] arr) {
int n = arr.length;
int temp = 0;
for (int i = 0; i< n - 1; i++) {
for (int j = 0; j< n - i - 1; j++) {
if (arr[j] >arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}

以上是 Java 中的冒泡排序代碼。冒泡排序的思路是每次將一個數與數組中其余的數進行比較,將較大的數往后移動。重復 n 次后,排序完成。冒泡排序的時間復雜度為 O(n2),算法簡單,但是效率較低,不適用于大規(guī)模的數據。

// Java 選擇排序代碼
public static void selectionSort(int[] arr) {
int n = arr.length;
int minIndex, temp;
for (int i = 0; i< n - 1; i++) {
minIndex = i;
for (int j = i + 1; j< n; j++) {
if (arr[j]< arr[minIndex]) {
minIndex = j;
}
}
temp = arr[i];
arr[i] = arr[minIndex];
arr[minIndex] = temp;
}
}

以上是 Java 中的選擇排序代碼。選擇排序的思想是每次從剩余未排序的數中選擇最小的數,放到已排序數列的末尾。遍歷多次后,數組排序完成。選擇排序的時間復雜度為 O(n2),與冒泡排序相同。但是,選擇排序算法的常數因子小于冒泡排序,因此在較大規(guī)模數據下,選擇排序算法的效率高于冒泡排序。