色yeye在线视频观看_亚洲人亚洲精品成人网站_一级毛片免费播放_91精品一区二区中文字幕_一区二区三区日本视频_成人性生交大免费看

當(dāng)前位置:首頁(yè) > 嵌入式培訓(xùn) > 嵌入式學(xué)習(xí) > 講師博文 > 數(shù)據(jù)結(jié)構(gòu)排序算法有哪些常用的

數(shù)據(jù)結(jié)構(gòu)排序算法有哪些常用的 時(shí)間:2018-01-11      來(lái)源:未知

首先對(duì)排序有個(gè)宏觀的了解, 排序的思想是這樣的,將有序的記錄序列(或稱(chēng))按照一定的關(guān)鍵字,將一個(gè)序列排列成想要得到的一個(gè)新的序列;旧犀F(xiàn)在的排序可以區(qū)分以下幾類(lèi):內(nèi)排序和外排序,穩(wěn)定排序和不穩(wěn)定排序。

內(nèi)排序:整個(gè)排序過(guò)程,所有元素調(diào)到內(nèi)存中進(jìn)行的排序。內(nèi)排序效率用比較次數(shù)來(lái)衡量。

外排序:數(shù)據(jù)量較大的情況下,需要借助外部存儲(chǔ)設(shè)備才能完成排序。外排序用讀/寫(xiě)外存的次數(shù)來(lái)衡量效率,塊與塊之間不能保證有序。

排序的性能比較基本的是其穩(wěn)定性,之后就是時(shí)間復(fù)雜度,空間復(fù)雜度了。

穩(wěn)定排序:對(duì)于相的元素來(lái)說(shuō),在排序之前和之后的順序是一樣的。

不穩(wěn)定排序:對(duì)于相同的元素來(lái)說(shuō),在排序之前和之后順序發(fā)生了變化。

根據(jù)使用的實(shí)際情況,用到內(nèi)排序的還是較多,所以重點(diǎn)討論幾種內(nèi)排序。幾種常見(jiàn)的排序算法大概有以下圖中所示幾種:

數(shù)據(jù)結(jié)構(gòu)排序算法

那么,舉幾個(gè)例子,講解下其應(yīng)用的相關(guān)排序算法。

(一)冒泡排序

思想:反復(fù)掃描待排序序列,在掃描的過(guò)程中順次比較相鄰的兩個(gè)元素的大小,若逆序就交換位置。第一趟,從第一個(gè)數(shù)據(jù)開(kāi)始,比較相鄰的兩個(gè)數(shù)據(jù),(以升序?yàn)槔?如果大就交換,得到一個(gè)大數(shù)據(jù)在末尾;然后進(jìn)行第二趟,只掃描前n-1個(gè)元素,得到次大的放在倒數(shù)第二位。以此類(lèi)推,后得到升序序列。如果在掃描過(guò)程中,發(fā)現(xiàn)沒(méi)有交換,說(shuō)明已經(jīng)排好序列,直接終止掃描。所以多進(jìn)行n-1趟掃描。

例:設(shè)記錄key集合k={50,36,66,76,95,12,25,36},排序過(guò)程如下:

數(shù)據(jù)結(jié)構(gòu)排序算法

后排序結(jié)果為紅色背景的順序。

(二)簡(jiǎn)單選擇排序

思想:第一趟時(shí),從第一個(gè)記錄開(kāi)始,通過(guò)n – 1次關(guān)鍵字的比較,從n個(gè)記錄中選出關(guān)鍵字小(大)的記錄,并和第一個(gè)(可以是后一個(gè))記錄進(jìn)行交換。第二趟從第二個(gè)記錄開(kāi)始,選擇小(大)的和第二個(gè)記錄交換。以此類(lèi)推,直至全部排序完畢。

例:設(shè)記錄key集合k={50,36,66,76,95,12,25,36},排序過(guò)程如下:

數(shù)據(jù)結(jié)構(gòu)排序算法

(三)快速排序

思想:冒泡排序一次只能消除一個(gè)逆序,為了能一次消除多個(gè)逆序,采用快速排序。以一個(gè)關(guān)鍵字為軸,從左從右依次與其進(jìn)行對(duì)比,然后交換,第一趟結(jié)束后,可以把序列分為兩個(gè)子序列,然后再分段進(jìn)行快速排序,達(dá)到高效。

例:設(shè)記錄的key集合k={50,36,66,76,36,12,25,95},每次以集合中第一個(gè)key為基準(zhǔn)的快速排序過(guò)程如下:

數(shù)據(jù)結(jié)構(gòu)排序算法

(四)直接插入排序

思想:基本的插入排序,將第i個(gè)插入到前i-1個(gè)中的適當(dāng)位置。

例: 設(shè)文件記錄的key集合k={50,36,66,76,95,12,25,36}(考慮到對(duì)記錄次key排序的情況,允許多個(gè)key相同。如此例中有2個(gè)key為36,后一個(gè)表示成36,以示區(qū)別),按直接插入排序方法對(duì)k的排序過(guò)程如下:k={50,36,66,76,95,12,25,36}

數(shù)據(jù)結(jié)構(gòu)排序算法

上面呢,通過(guò)例題加圖示的方式,簡(jiǎn)單的分析了其中的4個(gè)排序算法,是否理解了呢?好了,其他排序算法的分析我們以后有時(shí)間再講。當(dāng)然,理解了這種套路的話(huà),或者你來(lái)總結(jié)一下。

上一篇:音頻解碼的兩個(gè)標(biāo)準(zhǔn)AC97和IIS

下一篇:細(xì)說(shuō)Linux內(nèi)核目錄結(jié)構(gòu)

熱點(diǎn)文章推薦
華清學(xué)員就業(yè)榜單
高薪學(xué)員經(jīng)驗(yàn)分享
熱點(diǎn)新聞推薦
前臺(tái)專(zhuān)線(xiàn):010-82525158 企業(yè)培訓(xùn)洽談專(zhuān)線(xiàn):010-82525379 院校合作洽談專(zhuān)線(xiàn):010-82525379 Copyright © 2004-2022 北京華清遠(yuǎn)見(jiàn)科技集團(tuán)有限公司 版權(quán)所有 ,京ICP備16055225號(hào)-5,京公海網(wǎng)安備11010802025203號(hào)

回到頂部

主站蜘蛛池模板: 四虎精品影库4HUTV四虎 | 国产对白视频 | 香港经典A毛片免费观看特级 | 狠狠色综合久久丁香婷婷 | 国产极品车模吞精高潮呻吟 | 国产野模私拍在线视频 | 麻花豆传的最新一期内容是 | 永夜星河短剧免费观看 | 国产精品青青在线观看爽香蕉 | 两个女人互添下身高潮视频 | 亚洲AV成本人无码网站 | 亚洲AV片不卡无码久久wy193 | 无码人妻丰满熟妇区毛片18 | 久久久久亚洲精品无码网址 | 美女视频黄频A免费高清不卡 | 欧美日产亚洲国产精品 | 亚洲国产呦萝小初 | 最好的2019中文大全在线观看 | 3P人妻少妇对白精彩视频 | 中文字幕视频6区 | 天天射寡妇射 | 美女AV一区二区三区 | 女被c黄扒衣服视频 | 亚洲精品第一国产综合精品99 | 亚洲欧美一级黄色录像视频 | 最新国产在线拍揄自揄视频 | 亚洲国产成人精品无码区二本 | 男男做爰猛烈叫床视频gv | 久碰香蕉线视频在线观看视频 | 精品香蕉久久久午夜福利 | 在线视频观看国产 | 男女爽爽午夜18污污影院 | 亚洲欧美另类久久久精品能播放的 | 在线播放免费人成视频在线观看 | 国产美女午夜福利久久 | 欧美色aⅴ欧美综合色 | 亚洲国产日本韩国欧美mv | 裸体黑色丝袜18禁网站无风险 | 中文字幕在线无码一区二区三区 | 久久久经典视频 | 国产AV国片偷人妻麻豆郑州公司 |