基礎排序總結

2022-09-01 18:15:11 字數 747 閱讀 7785

o(n^2)級別的演算法主要包括:選擇排序,插入排序,冒泡法排序,希爾排序等

選擇排序:選擇排序,將後面未排序陣列中最小的與前面的元素交換

1 template 2

void selectionsort(t arr, int

n) 9

10swap(arr[i], arr[minindex]);11}

12 }

插入排序,選擇前面陣列已經排好序的部分合適的插入位置

1 template 2

void insertionsort1(t arr, int

n) 9 arr[j] =e;10}

11}12//

對arr[l...r]範圍的陣列進行插入排序

13 template14

void insertionsort(t arr, int l, int

r) 24

25return

;26 }

冒泡法:每次迴圈將最大的放到擠出到後面位置

1 template 2

void bubblesort(t arr, int

n) 8}9

}10 }

//

希爾排序

templatevoid shellsort(t arr, int

n) h /= 3

; }

}

排序演算法基礎總結

氣泡排序 bubblesort param arr public static void bubblesort int arr for int i arr.length 1 i 0 i 選擇排序 selectionsort 兩個指標,乙個遍歷指標,乙個指向當前的最值 param arr public...

R語言 基礎總結(排序)

r中自帶排序函式有order,sort兩個函式,plyr中有arrange。order和sort是針對向量進行操作的,arrange針對資料框。其中order返還排序後的座標,sort返還排序後的值,arrange返還的是基於某列排序後的資料框,方便多重依據排序。x cbind x1 3,x2 c ...

八大基礎排序總結

大概花了一周的時間把八大基礎排序過了一遍,這篇博文主要是用來回顧一下八大基礎排序的要點和一些總結 回顧 總的來說 快速排序是用得比較廣泛的乙個排序,也是經常出現的乙個排序,應該重點掌握 思路 實現要點 優化 如果一趟排序後也沒有交換位置,那麼該陣列已有序 外層迴圈是排序的趟數 for int i 0...