五月天堂网_免费看影片_1024手机看毛片_亚洲综合四区_男人的天堂影院_在线亚洲自拍

中培偉業(yè)IT資訊頻道
您現(xiàn)在的位置:首頁 > IT資訊 > 軟件研發(fā) > Python基礎(chǔ)篇:如何用Python實現(xiàn)排序算法

Python基礎(chǔ)篇:如何用Python實現(xiàn)排序算法

2020-06-17 14:53:35 | 來源:中培企業(yè)IT培訓網(wǎng)

排序是每個軟件工程師和開發(fā)人員都需要掌握的一項技能。不僅要通過編程訪談,而且要對程序本身有一個全面的了解。不同的排序算法,表明算法設(shè)計上如何嚴重影響程序的復雜性、運行速度和效率。實現(xiàn)排序算法的方法有很多,例如冒泡排序,選擇排序,歸并排序,希爾排序,快速排序,插入排序,堆排序,基數(shù)排序等,今天就給大家介紹,如何用Python實現(xiàn)排序算法的其中4個排序算法。

  方法一:快速排序

首先要打亂序列順序 ,以防算法陷入最壞時間復雜度。快速排序使用“分而治之”的方法。

對于一串序列,首先從中選取一個數(shù),凡是小于這個數(shù)的值就被放在左邊一摞,凡是大于這個數(shù)的值就被放在右邊一摞。然后,繼續(xù)對左右兩摞進行快速排序。

直到進行快速排序的序列長度小于 2 (即序列中只有一個值或者空值)。

  方法二:冒泡排序

冒泡排序(順序形式),從左向右,兩兩比較,如果左邊元素大于右邊,就交換兩個元素的位置。

其中,每一輪排序,序列中最大的元素浮動到最右面。也就是說,每一輪排序,至少確保有一個元素在正確的位置。

這樣接下來的循環(huán),就不需要考慮已經(jīng)排好序的元素了,每次內(nèi)層循環(huán)次數(shù)都會減一。

其中,如果有一輪循環(huán)之后,次序并沒有交換,這時我們就可以停止循環(huán),得到我們想要的有序序列了。

  方法三:選擇排序

選擇排序,每次選擇當前序列的最小值,將其與當前序列的第一個元素交換位置,每迭代一次,當前序列長度減一。迭代結(jié)束,即可得到有序序列。

  方法四:插入排序

插入排序的基本操作就是將一個數(shù)據(jù)插入到已經(jīng)排好序的有序數(shù)據(jù)中,從而得到一個新的、個數(shù)加一的有序數(shù)據(jù),算法適用于少量數(shù)據(jù)的排序,時間復雜度為O(n^2)。是穩(wěn)定的排序方法。

插入算法把要排序的數(shù)組分成兩部分:第一部分包含了這個數(shù)組的所有元素,但將最后一個元素除外(讓數(shù)組多一個空間才有插入的位置),而第二部分就只包含這一個元素(即待插入元素)。在第一部分排序完成后,再將這個最后元素插入到已排好序的第一部分中。

以上就是如何用Python實現(xiàn)排序算法的4種方法,不知道你學會了嗎。想了解更多Python的信息,請繼續(xù)關(guān)注中培偉業(yè)。

主站蜘蛛池模板: 激情视频综合网 | 少妇太爽了在线观看免费视频 | 手机av网站| 免费看视频网站在线 | 五月婷婷色 | 天天艹日日干 | 羞羞视频播放 | 久久中文电影 | 亚洲制服一区 | 日韩精品久久久久久久电影竹菊 | 不卡的av在线免费观看 | 国产一区二区波多野结衣 | 国产欧美亚洲另类第一页 | 国产激情情久久久护士女 | 欧美精品一区二区少妇免费A片 | 日本欧美国产在线观看 | 青青草国产成人av片免费 | 国产午夜精品一区二区三区四区 | 中文在线免费一区三区高中清不卡 | 亚洲国产无线乱码在线观看 | 五月婷婷一区 | 日本三级2019 | 伊人久麻豆社区 | 日本又色又爽又黄又免费网站 | 饥渴少妇偷人在线播放 | xxxxbdsmsex女| 成人碰碰 | 亚洲欧洲中文字幕 | 免费黄色国产视频 | 亚洲精欧美一区二区精品 | 精品不卡在线 | 日本一级二级三级久久久 | 黄色草逼网站 | 欧美日韩久久久 | 超碰伊人久久 | 丰满少妇三级全黄 | 成人免费视频看看 | 99视频在线免费播放 | 成人免费一级电影 | 95视频在线观看 | 深夜福利看片 |