最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

選擇排序(Selection Sort)

2022-08-29 21:10 作者:游俠翻滾  | 我要投稿

基本概念

選擇排序(Selection-sort)是一種簡單直觀的排序算法。它的工作原理:首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再從剩余未排序元素中繼續(xù)尋找最?。ù螅┰兀缓蠓诺揭雅判蛐蛄械哪┪?。以此類推,直到所有元素均排序完畢。

動畫演示:

選擇排序

紅色的是當(dāng)次循環(huán)最小值,黃色的是已執(zhí)行完的數(shù)據(jù),綠色的是當(dāng)前搜索的元素

從上圖我們可以很明顯的看出來選擇排序的執(zhí)行方式,對此我們進(jìn)行總結(jié)了幾點:

1. 讀入數(shù)據(jù)存放在a數(shù)組中

2. 在a[1]~a[n]中選擇值最小的元素與第一位的元素進(jìn)行調(diào)換,則把最小的元素放在a[1]中

3. 在a[2]~a[n]中選擇值最小的元素與第二位元素進(jìn)行調(diào)換,則把最小的元素放在a[2]中

4. 直到第n- 1個元素與第n個元素比較排序為止(重復(fù)執(zhí)行該內(nèi)容)

選擇排序的缺點也很明顯且致命,即

1,時間復(fù)雜度高。

2,不是穩(wěn)定的排序算法,因為每次找到最小的值后會進(jìn)行交換位置的操作。

3,最壞和最好情況都是O(n2)的復(fù)雜度。若有n個元素則都得執(zhí)行n次。

這個排序方法是表現(xiàn)最穩(wěn)定的排序算法之一,因為無論什么數(shù)據(jù)進(jìn)去都是O(n2)的時間復(fù)雜度,所以用到它的時候,數(shù)據(jù)規(guī)模越小越好。這個排序唯一的好處可能就是不占用額外的內(nèi)存空間吧。

程序?qū)崿F(xiàn)

?程序?qū)崿F(xiàn)方法,用兩層循環(huán)完成算法,外層循環(huán)i 控制當(dāng)前序列最小值存放的數(shù)組位置,內(nèi)層循環(huán)j 值控制從i +1到序列中最小的元素所在位置k。

具體操作如下:


好了,選擇排序就講到這里了

在此,部分借鑒了知乎阿杰同學(xué)(https://zhuanlan.zhihu.com/p/449501682)

模板以及部分代碼借鑒了《信息學(xué)奧賽一本(C++)》

選擇排序(Selection Sort)的評論 (共 條)

分享到微博請遵守國家法律
溧水县| 密云县| 东源县| 罗定市| 论坛| 体育| 苍梧县| 清苑县| 斗六市| 靖西县| 丰原市| 贺州市| 紫云| 十堰市| 定远县| 山西省| 石渠县| 和政县| 信丰县| 积石山| 商丘市| 新和县| 永新县| 汉阴县| 遂川县| 湟源县| 砀山县| 龙陵县| 辽中县| 秭归县| 榆林市| 香港 | 香格里拉县| 公安县| 二连浩特市| 渭南市| 海安县| 台中县| 手游| 五常市| 泉州市|