介紹:
選擇排序無疑是最簡單直觀的排序。它的工作原理如下。
步驟:
在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。
再從剩餘未排序元素中繼續尋找最小(大)元素,然後放到已排序序列的末尾。
以此類推,直到所有元素均排序完畢。
/**
* 選擇排序演算法
* 基本思想是:每一趟從待排序的記錄中選出關鍵字最小的記錄,順序放在已排好序的子串行前面,直到全部記錄排序完畢。
* @param nums 被排序的陣列
* @param n 陣列長度
* 最壞情況:o(n2) ,最好情況:o(n2)
*/public void selectsort(int nums,int len){
for(int i=0;i
資料結構 七大排序演算法總結
面試中,無論是問還是寫,排序被問到的次數總是很多。總結一些八大排序演算法。插入,希爾,選擇,堆 冒泡,快速 歸併 排序方法 初始序列有無影響 最好情況 最壞情況 插入排序 有正序有序這樣只需要比較n次,不需要移動。因此時間複雜度為o n 逆序有序這樣每乙個元素就需要比較n次,共有n個元素,因此實際複...
資料結構的七大主流排序演算法總結之一 冒泡演算法
介紹 氣泡排序的原理非常簡單,它重複地走訪過要排序的數列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。步驟 比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。對第0個到第n 1個資料做同樣的工作。這時,最大的數就 浮 到了陣列最後的位置上。針對所有的元素重複以上的步驟,除了最後乙個。持...
資料結構七大內部排序 演算法比較
1 氣泡排序 include using namespace std 氣泡排序 void bubblesort int a,int n if exchange false 氣泡排序測試 intmain bubblesort nums,n for int i 0 i i else delete num...