冒泡,選擇,插入排序的效率比較

2021-07-10 03:57:37 字數 962 閱讀 7743

思想:每次將最大的數字移動到陣列的最後面。比較複雜度和操作複雜度都較高。

**實現

public

static

void

bubblesort(int arr)}}

}

思想:假設每次最小值(最大值)為第乙個,然後遍歷之後的元素,若有更小的元素,則該元素的下標就為minindex。最後,將最小的值換至第乙個(i)位置。

**實現

public

static

void

selectsort(int arr)

}}

思想:將陣列分為有序和無須的兩部分,每次從無須的陣列中選出乙個元素與有序陣列進行比較,並將其插入到有序陣列中。比較複雜度和操作複雜度都較小。

* 每次必須記下無序陣列的第乙個值,便於後移和插入。**實現

public

static

void

insertsort(int arr)

arr[in] = temp;

}}

public

static

void

main(string args)

long before = system.currenttimemillis();

insertsort(arr);

// selectsort(arr);

// bubblesort(arr);

long after = system.currenttimemillis();

system.out.println("執行時間是: "+(after-before));

最終結果(100000個元素的陣列排序時間)

最終結論顯示,插入排序的效率要高於選擇排序和氣泡排序。

冒泡,選擇,插入排序

arr 8,3,1,2,5 定義全域性陣列,用於氣泡排序 arr1 9,6,7,1,4 定義全域性陣列,用於選擇排序 arr2 10,25,7,2,5,1,30,28,21 定義全域性陣列,用於插入排序 temp 0 全域性變數,用於交換數字 氣泡排序 puts 氣泡排序 n begin upto迴...

冒泡 選擇 插入排序

氣泡排序氣泡排序實現記口訣 n個數字來比較外層迴圈n 1,內層迴圈n 1 i public static void main string args for int i 0 ia j 1 第一層 第1次比較 8,7,6,5,4 第2次比較 7,8,6 5,4 第3次比較 7,6,8,5 4 第4次比...

氣泡排序 插入排序 選擇排序的原理及比較

public class test bubblesort arr selectsort arr insertsort arr for int i 0 i arr.length i 氣泡排序 從初始位置開始,與相鄰的數進行比較,前面的數大於後面的數,進行交換,得到較大的數之後,這個數繼續跟後面相鄰的數...