久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁(yè)  >  技術(shù)干貨  > python中堆排序算法實(shí)現(xiàn)

python中堆排序算法實(shí)現(xiàn)

來(lái)源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-11-08 08:31:38 1699403498

在使用python中,你會(huì)遇到一個(gè)詞,就是堆排序。那堆排序是什么呢?堆排序看字面意思是一種排序方法,那堆是什么呢?堆是一個(gè)近似完全二叉樹的結(jié)構(gòu),并同時(shí)滿足堆積的性質(zhì)。其實(shí)堆排序是指利用堆這種數(shù)據(jù)結(jié)構(gòu)所設(shè)計(jì)的一種排序算法。認(rèn)識(shí)了堆排序,那你知道堆排序在python中如何實(shí)現(xiàn)嗎?本文小編就像大家演示推排序在python的實(shí)現(xiàn)代碼。

代碼:

defheap_sort(array,n,length):

l=2*n+1

r=2*n+2

ifl<=length-1:

heap_sort(array,l,length)

ifr<=length-1:

heap_sort(array,r,length)

ifl>=length:

return

index=l

ifrarray[l]:

index=r

ifarray[n]

array[n],array[index]=array[index],array[n]

測(cè)試:

if__name__=='__main__':

a=input("輸入數(shù)組元素:").split("")

a=list(map(int,a))

b=a.copy()

c=a.copy()

foriinrange(len(c)):

heap_sort(c,0,len(c)-i)

c[0],c[len(c)-i-1]=c[len(c)-i-1],c[0]

print(c)

輸入數(shù)組元素:4836715

[1,3,4,5,6,7,8]

Processfinishedwithexitcode0

堆排序的時(shí)間復(fù)雜度為O(nlogn),是不穩(wěn)定排序。如果你需要用到堆排序,可以套用上述代碼喲~

以上內(nèi)容為大家介紹了python中堆排序算法實(shí)現(xiàn),希望對(duì)大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
python3標(biāo)識(shí)符是什么?

python中的標(biāo)識(shí)符是用于識(shí)別變量、函數(shù)、類、模塊以及其他對(duì)象的名字,標(biāo)識(shí)符可以包含字母、數(shù)字及下劃線(_),但是必須以一個(gè)非數(shù)字字符開始。p...詳情>>

2023-11-08 11:24:26
Windows xp系統(tǒng)安裝不上python

翻出多年前xp系統(tǒng)電腦,想玩玩python,奈何最新版本的python無(wú)法在xp系統(tǒng)上安裝。解決方法:支持在xp系統(tǒng)上安裝python的最新版本為3.4.x。這里...詳情>>

2023-11-08 09:25:38
python yield的用法

通常大家遇到不會(huì)內(nèi)容,第一想法肯定是進(jìn)行搜索查找了,然而所有標(biāo)題叫簡(jiǎn)單易懂并非真的如此,我在查詢pythonyield就是,既然無(wú)簡(jiǎn)單易懂內(nèi)容,...詳情>>

2023-11-08 09:14:50
詳析python多行代碼注釋快捷鍵的用法

我們?cè)谇脫舸a時(shí),遇到不需要使用的語(yǔ)句,大家是否一行一行的刪除?這樣工作量可謂龐大,今天給大家?guī)?lái)關(guān)于注釋的快捷鍵使用,一起來(lái)看看吧~關(guān)...詳情>>

2023-11-08 09:11:14
Python中倒排列是倒序排列的意思

python中倒序排列的方法:1、數(shù)組倒序:原始元素的倒序排列arr=[1,2,3,4,3,4](1)printarr[::-1]---->[4,3,4,3,2,1](2)arr.reverse()p...詳情>>

2023-11-08 08:49:38