一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - Python 選擇排序中的樹形選擇排序

Python 選擇排序中的樹形選擇排序

2022-03-03 00:09李欣容 Python

這篇文章主要介紹了Python 選擇排序中的樹形選擇排序,選擇排序主要包括三個排序,分別是簡單選擇排序、樹形選擇排序和堆排序,本文主要講解的是樹形選擇排序,下面詳細內容,需要的朋友可以參考一下,希望對你有所幫助

1、引言

選擇排序里面主要講了三個排序,分別是簡單選擇排序、樹形選擇排序、堆排序。今天這篇文章主要講樹形選擇排序,樹形選擇排序也被稱為錦標賽排序,樹形選擇排序運用了錦標賽的思想進行排序,樹形選擇排序是指首先對n個記錄的關鍵字進行兩兩比較,然后在n/2個較小者之間再進行兩兩比較,如此重復,直至選出最小的記錄為止。

 

2、問題描述

給定一個序列,我們將如何用樹形選擇排序來將它排序呢,下面將結合圖形和文字一起講述。

示例1:對數據表A=(73,45,79,90,81,75,94,97)進行排序

輸出:45 73 75 79 81 90 94 97

 

3、解決方案

數據表A是亂序的,現在需要將它按照從小到大的順序排序好,根據樹形選擇排序的思想首先需要將比較的記錄全部作為葉子,然后按照從左到右的順序,兩兩進行比較,選出最小的那個,然后將比較后的n/2個元素又按照從左到右的順序兩兩進行比較,選出最小的,一直重復這樣操作后,會從底向上形成一個完全二叉樹。可能讀完這段文字還是不好理解,下面我將用圖示來具體描述。

Python 選擇排序中的樹形選擇排序

1.構建二叉樹:圖1是數據表A構成的二叉樹,首先直接將數據表A的數據直接放在最下面,也就是二叉樹的葉子;然后從左到右兩兩進行比較,例如73和45比較后選出最小的45,79和90比較后選出最小的79,將選出的45和79比較選出最小的45,一直這樣重復操作,直到構成一個完整的二叉樹。

Python 選擇排序中的樹形選擇排序

2. 如何輸出正確順序:根據圖1可以知道根節點是45,也就是最小的。圖2就是把第一遍找出來的45用無窮符號代替,然后又兩兩比較,直到根節點變為最小的,通過圖1和圖2對比可以看出第一遍找到的最小的是45,第二遍是73,,現在又將找出來的73用無窮符號代替,又重復上面的操作,直到對所有數據排完序。如下圖所示

Python 選擇排序中的樹形選擇排序

 

4、結語

樹形選擇排序還是比較好理解,圖和文字結合就比較容易結合。

到此這篇關于Python 選擇排序中的樹形選擇排序的文章就介紹到這了,更多相關Python 樹形選擇排序內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产日韩成人 | 美女毛片视频 | 免费观看大片毛片 | 色综合九九 | 小早川怜子息梦精在线播放 | 色五婷婷 | 亚洲阿v天堂2018在线观看 | 日韩高清在线观看 | 国产美女亚洲精品久久久久久 | 四虎影免看黄 | 国产一卡2卡3卡四卡高清 | 高清国产欧美一v精品 | aaaaa特级毛片| 91制片在线观看 | 国产成人看片免费视频观看 | 男生同性视频twink在线 | 精品国产成a人在线观看 | 美女扒开粉嫩尿口漫画 | 91高清国产视频 | 草草草在线| 国产一区二区在线免费观看 | 欧美精品亚洲精品日韩专区va | 欧美一级视频在线 | 欧美日韩国产一区二区三区不卡 | 日本免费一区二区三区四区五六区 | 日本加勒比一区 | 国产成人精品午夜视频' | 国产成人精品午夜视频' | 亚洲一区二区三区91 | 香蕉tv国产在线永久播放 | 放荡的女老板bd中文字幕 | 羞羞在线观看 | 毛片免费视频观看 | 精品视频国产 | 久久精品在现线观看免费15 | 成年人视频免费在线播放 | 7个黑人玩北条麻妃 | 女人和拘做受全过程免费 | 外国xxx | 热99这里有精品综合久久 | 国产在线精品亚洲第一区香蕉 |