選擇排序

選擇排序(Selection sort)是一種簡單直觀的排序算法。它的工作原理是:第一次從待排序的數(shù)據(jù)元素中選出最?。ɑ蜃畲螅┑囊粋€元素,存放在序列的起始位置,然后再從剩余的未排序元素中尋找到最?。ù螅┰?,然后放到已排序的序列的末尾。以此類推,直到全部待排序的數(shù)據(jù)元素的個數(shù)為零。選擇排序是不穩(wěn)定的排序方法。


#include<iostream>

#include<algorithm>

using namespace std;

void selectSort(int arr[] ,int n){

????????for(int i=0;i<n;i++){

????????//尋找[i,n)區(qū)間里的最小值

????????int minIndex = i;?

????????for(int j=i+1;j<n;j++)

????????{

????????????????if(arr[j]<arr[minIndex])

? ? ? ? ? ? ? ? {

????????????????????????????minIndex = j;//更新索引

? ? ? ? ? ? ? ? ? }

????????}

????????//找到最小位置的索引,然后交換最小位置的數(shù)和當前的位置的數(shù)

????????swap(arr[i],arr[minIndex]);

}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容