国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

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

可視化冒泡排序算法

2022-11-17 15:39 作者:游戲開(kāi)發(fā)RAIN  | 我要投稿

相信大家都知道一些排序算法,比如冒泡排序,快速排序,選擇排序等等...就算大家不知道,也應(yīng)該聽(tīng)過(guò),一般的面試都會(huì)問(wèn)一些算法,

簡(jiǎn)單一點(diǎn)的就是冒泡排序這些,難一些的就是A*尋路算法等...其實(shí)大家可能都會(huì)覺(jué)得這個(gè)冒泡排序非常簡(jiǎn)單,確實(shí)是挺簡(jiǎn)單的,

但是對(duì)于初學(xué)者或者一些萌新們來(lái)說(shuō),他們只會(huì)按照別人說(shuō)的秘籍:外層循環(huán)n - 1 次,里層循環(huán)n -1 - i 次,但是真的理解了嗎?為什么是這么操作的呢?

基于這樣的一個(gè)情況,我這次來(lái)寫(xiě)一個(gè)可視化的冒泡排序,幫助萌新初學(xué)者們來(lái)加深下對(duì)這個(gè)冒泡排序算法的理解。

這個(gè)算法需要重復(fù)地走訪過(guò)要排序的元素列,依次比較兩個(gè)相鄰的元素,如果他們的順序(如從大到小、首字母從A到Z)錯(cuò)誤就把他們交換過(guò)來(lái)。走訪元素的工作是重復(fù)地進(jìn)行直到?jīng)]有相鄰元素需要交換,也就是說(shuō)該元素列已經(jīng)排序完成。它的名字由來(lái)是因?yàn)樵酱蟮脑貢?huì)經(jīng)由交換慢慢“浮”到數(shù)列的頂端(升序或降序排列),就如同碳酸飲料中二氧化碳的氣泡最終會(huì)上浮到頂端一樣,故名“冒泡排序”。它的原理簡(jiǎn)單來(lái)說(shuō)為以下四點(diǎn):

一:比較相鄰的元素。如果第一個(gè)比第二個(gè)大,就交換他們兩個(gè)。

二:對(duì)每一對(duì)相鄰元素做同樣的工作,從開(kāi)始第一對(duì)到結(jié)尾的最后一對(duì)。在這一點(diǎn),最后的元素應(yīng)該會(huì)是最大的數(shù)。

三:針對(duì)所有的元素重復(fù)以上的步驟,除了最后一個(gè)。

四:持續(xù)每次對(duì)越來(lái)越少的元素重復(fù)上面的步驟,直到?jīng)]有任何一對(duì)數(shù)字需要比較。

OK,看樣子有朋友已經(jīng)看蒙了,話(huà)不多說(shuō),上效果圖看看:

這是已經(jīng)排序完成的效果,既然是可視化排序,當(dāng)然排序的過(guò)程是可以看的到的,這里我用的是協(xié)程函數(shù)來(lái)做的,代碼附上:

有什么看不懂的可以來(lái)找我


可視化冒泡排序算法的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
娱乐| 南丰县| 林西县| 大荔县| 宜阳县| 平邑县| 林西县| 绥德县| 龙江县| 犍为县| 高碑店市| 苏尼特右旗| 彝良县| 兰溪市| 玛曲县| 安溪县| 苏尼特左旗| 平泉县| 吉水县| 谢通门县| 大庆市| 浦城县| 清远市| 巴彦淖尔市| 竹北市| 博兴县| 剑阁县| 论坛| 涟源市| 交口县| 锡林浩特市| 乐山市| 积石山| 报价| 屏山县| 望谟县| 青神县| 大新县| 永清县| 邵阳市| 客服|