摘要:導(dǎo)語這篇說下選擇排序。選擇排序選擇排序是一種簡(jiǎn)單直觀的排序算法。以此類推,直到所有元素均排序完畢。選擇排序的主要優(yōu)點(diǎn)與數(shù)據(jù)移動(dòng)有關(guān)。動(dòng)圖演示實(shí)例當(dāng)前值的位置相鄰值進(jìn)行比較,條件成立替換當(dāng)前值倒序交換位置參考資料選擇排序選擇排序。
導(dǎo)語
這篇說下選擇排序。
選擇排序選擇排序(Selection sort)是一種簡(jiǎn)單直觀的排序算法。它的工作原理如下。首先在未排序序列中找到最?。ù螅┰?,存放到排序序列的起始位置,然后,再從剩余未排序元素中繼續(xù)尋找最小(大)元素,然后放到已排序序列的末尾。以此類推,直到所有元素均排序完畢。選擇排序的主要優(yōu)點(diǎn)與數(shù)據(jù)移動(dòng)有關(guān)。如果某個(gè)元素位于正確的最終位置上,則它不會(huì)被移動(dòng)。選擇排序每次交換一對(duì)元素,它們當(dāng)中至少有一個(gè)將被移到其最終位置上,因此對(duì) n 個(gè)元素的表進(jìn)行排序總共進(jìn)行至多 n -1 次交換。在所有的完全依靠交換去移動(dòng)元素的排序方法中,選擇排序?qū)儆诜浅:玫囊环N
維基百科中的介紹。前兩篇介紹的冒泡排序、快速排序都屬于完全依靠交換去移動(dòng)元素的排序方法。
動(dòng)圖演示 實(shí)例$arr[$k]) { $key = $k; } } if ($key != $i) { // 交換位置 $temp = $arr[$key]; $arr[$key] = $arr[$i]; $arr[$i] = $temp; } } return $arr; } print_r(selectSort($arr)); // Array ( [0] => 2 [1] => 3 [2] => 8 [3] => 16 [4] => 21 [5] => 23 [6] => 24 [7] => 32 [8] => 33 )
參考資料:選擇排序、PHP 選擇排序。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/30019.html
摘要:本文將介紹快速排序計(jì)數(shù)排序梳排序堆排序歸并排序希爾排序選擇排序插入排序地精排序聯(lián)合冒泡排序雞尾酒排序冒泡排序奇偶排序使用標(biāo)志的冒泡排序種排序算法的實(shí)現(xiàn)。是一種不穩(wěn)定的排序算法。 本文將介紹快速排序、計(jì)數(shù)排序、梳排序、堆排序、歸并排序、希爾排序、選擇排序、插入排序、地精排序、聯(lián)合冒泡排序、雞尾酒排序、冒泡排序、奇偶排序、使用標(biāo)志的冒泡排序14種排序算法的實(shí)現(xiàn)。本文是由于閱讀了文章《測(cè)試評(píng)...
摘要:數(shù)據(jù)結(jié)構(gòu)常見數(shù)據(jù)結(jié)構(gòu)數(shù)組是最簡(jiǎn)單而且應(yīng)用最廣泛的數(shù)據(jù)結(jié)構(gòu)特征使用連續(xù)內(nèi)存空間來存儲(chǔ)存放相同類型或著衍生類型的元素?cái)?shù)組比較特別,可以存放八種數(shù)據(jù)類型通過下標(biāo)來訪問集合特征保存不重復(fù)的元素字典特征就是關(guān)聯(lián)數(shù)組,以形式存儲(chǔ)棧,與隊(duì)列相似特征存儲(chǔ)數(shù) 數(shù)據(jù)結(jié)構(gòu) 常見數(shù)據(jù)結(jié)構(gòu) Array 數(shù)組是 最簡(jiǎn)單 而且 應(yīng)用最廣泛 的數(shù)據(jù)結(jié)構(gòu) 特征: 1、使用連續(xù)內(nèi)存空間來存儲(chǔ) 2、存放相同類型或著衍生類型...
摘要:它的基本思想是通過一趟排序?qū)⒁判虻臄?shù)據(jù)分割成獨(dú)立的兩部分,其中一部分的所有數(shù)據(jù)都比另外一部分的所有數(shù)據(jù)都要小,然后再按此方法對(duì)這兩部分?jǐn)?shù)據(jù)分別進(jìn)行快速排序,整個(gè)排序過程可以遞歸進(jìn)行,以此達(dá)到整個(gè)數(shù)據(jù)變成有序序列。 選擇排序 選擇排序主要是將假設(shè)數(shù)組中的第一個(gè)是最小的,循環(huán)與數(shù)組中的第一個(gè)進(jìn)行比較 如果比其還小 則記錄下標(biāo) 進(jìn)行數(shù)值交換 效率相對(duì)冒泡來說比較高 function s...
摘要:支持字符串哈希列表集合有序集合等數(shù)據(jù)結(jié)構(gòu),目前不支持事務(wù)。是多入口以下關(guān)于表驅(qū)動(dòng)法的描述,錯(cuò)誤的是表驅(qū)動(dòng)法可以作為復(fù)雜繼承結(jié)構(gòu)的替代方案,難點(diǎn)在于一個(gè)經(jīng)過深思熟慮的查詢表。表驅(qū)動(dòng)法查找無規(guī)則分布的數(shù)據(jù)采用階梯訪問的方法最佳。 1、有關(guān)PHP字符串的說法,不對(duì)的是: CA、如果一個(gè)腳本的編碼是ISO-8859-1,則其中的字符串也會(huì)被編碼為 ISO-8859-1。B、PHP的字符串在內(nèi)部...
摘要:截止到目前為止,官方已經(jīng)發(fā)布了的版本,距離發(fā)布第一個(gè)正式版本不會(huì)很遠(yuǎn)了現(xiàn)在來說的重大特性肯定已經(jīng)是定型了,不會(huì)再有什么變動(dòng)了。 截止到目前為止,PHP官方已經(jīng)發(fā)布了php7的RC7版本,距離發(fā)布第一個(gè)正式版本不會(huì)很遠(yuǎn)了!現(xiàn)在來說php7的重大特性肯定已經(jīng)是定型了,不會(huì)再有什么變動(dòng)了。后續(xù)一些版本的迭代主要也就是修修bug,優(yōu)化之類的。下面就來說話我們一直期待的php7會(huì)有那些主要的變化...
閱讀 1020·2021-11-22 13:52
閱讀 1450·2021-11-19 09:40
閱讀 3184·2021-11-16 11:44
閱讀 1279·2021-11-15 11:39
閱讀 3913·2021-10-08 10:04
閱讀 5374·2021-09-22 14:57
閱讀 3108·2021-09-10 10:50
閱讀 3191·2021-08-17 10:13