資料結構 選擇排序

2021-10-04 21:53:03 字數 1056 閱讀 3965

選擇排序的基本思想:每次從待排序資料元素中選出最大(最小)的元素,放在起始位置或末尾,直到全部待排序的 資料元素排完。

1.在元素集合array[i]–array[n-1]中選擇關鍵碼最大(小)的資料元素

2.若它 不是這組元素中的最後乙個(第乙個)元素,則將它與這組元素中的最後乙個(第乙個)元素交換

3.在剩餘的array[i]–array[n-2](array[i+1]–array[n-1])集合中,重複上述步驟,直到集合剩餘1個元素

在此基礎上進行優化可以兩側同時進行排序提高效率

void

selectsortop

(int

* array,

int size)

//最右側位置可能儲存的是當前最小值,交換後minpos標記的不是最小值

if(maxpos != end)

swap

(&array[maxpos]

,&array[end]);

//在交換後要及時的更新minpos的標記位置

if(minpos == end)

//xml

minpos = maxpos;

//swap(&array[maxpos],&array[begin]);

if(minpos != begin)

swap

(&array[minpos]

,&array[begin]);

begin++

; end--;}

}

資料結構 排序 選擇排序

選擇排序 所謂選擇排序,就是不斷從剩下的元素中選擇最小的元素放入前面,那麼 前面 我們就從下標為 0 i 0 的第乙個元素開始 此時我們假設下標為 0 的元素是最小的,minindex 0,minindex 就是最小值的索引 相應的剩下的元素則從 i 1 的位置開始,也就是從 1 開始,然後依次與 ...

資料結構 排序(選擇排序)

排序 選擇排序法 include include include include 選擇排序 selection sort 是一種簡單直觀的排序演算法。它的工作原理是每一次從待排序的資料元素中選出最小 或最大 的乙個元素,存放在序列的起始位置,直到全部待排序的資料元素排完。選擇排序是不穩定的排序方法 ...

資料結構 選擇排序

選擇排序是一種比較直觀的排序方法 選擇排序的思想在於 預設公升序排序 在乙個陣列當中,選擇這個陣列當中最小的元素,將這個元素放在第一位,然後尋找第二小的元素,將這個元素放在第二位。以此類推,直到將這個陣列完成排序。這是乙個比較直觀的排序方法 選擇排序 演算法思想 在遍歷陣列的時候 找出陣列當中最小的...