【C++信息學(xué)奧賽培訓】數據排序之冒泡排序(Bubble Sort)詳解以及實例解析

2021-04-10 04:45:01

資訊專題 / C++信息學(xué)奧賽培訓 00

一、冒泡排序算法介紹:

冒泡排序(Bubble Sort)是最爲簡單直觀的一種(zhǒng)排序,通過(guò)重複走完數組的所有元素,通過(guò)打擂台的方式兩(liǎng)個兩(liǎng)個比較,直到沒(méi)有數可以交換的時(shí)候結束這(zhè)個數,再到下個數,直到整個數組排好(hǎo)順序。因一個個浮出所以叫(jiào)冒泡排序。這(zhè)個算法的名字由來是因爲越小的元,素會(huì)經(jīng)由交換慢慢"浮"到數列的頂端。作爲最簡單的排序算法之一,冒泡排序給我的感覺就(jiù)像 Abandon 在單詞書裡(lǐ)出現的感覺一樣,每次都(dōu)在第一頁第一位,所以最熟悉。冒泡排序還(hái)有一種(zhǒng)優化算法,就(jiù)是立一個 flag,當在一趟序列遍曆中元素沒(méi)有發(fā)生交換,則證明該序列已經(jīng)有序。但這(zhè)種(zhǒng)改進(jìn)對(duì)于提升性能(néng)來說(shuō)并沒(méi)有什麼(me)太大作用。雙重循環時(shí)間 O(n^2)

二、冒泡排序算法步驟:

1、比較相鄰兩(liǎng)個數據。如果第一個比第二個大,就(jiù)交換兩(liǎng)個數

2、對(duì)每一對(duì)相鄰的數做1同樣的工作,從開(kāi)始第一對(duì)到結尾的最後(hòu)一對(duì)。在最後(hòu)的數就(jiù)是最大的數。

3、針對(duì)所有元素上面(miàn)的操作,除了最後(hòu)一個。

4、重複1~3步驟,知道(dào)順序完成(chéng)。

三、冒泡排序算法可視化演示:

C++信息學(xué)奧賽培訓冒泡排序算法可視化演示

四. 冒泡排序算法什麼(me)時(shí)候最快?

當輸入的數據已經(jīng)是正序時(shí)(都(dōu)已經(jīng)是正序了,所以還(hái)要冒泡排序有何用?)。

五. 冒泡排序算法什麼(me)時(shí)候最慢?

當輸入的數據是反序時(shí)(寫一個 for 循環反序輸出數據就(jiù)行了,幹嘛要用冒泡排序呢?)。

六、冒泡排序算法實例解析(信息學(xué)奧賽一本通例題)

來源:淄博信息學(xué)奧賽培訓 / 編輯:NOIP/NOI輔導

上一篇:【C++信息學(xué)奧賽培訓】數據排序之快速排序(QuickSort)詳解以及實例解析

下一篇:【C++信息學(xué)奧賽培訓】數據排序之選擇排序(Select Sort)詳解以及實例解析

返回列表

延展閱讀

更多相關案例,更多借鑒,更多優化!

16年時(shí)間,圻谷深入100多個細分行業,從建築、建材、裝修、到工程、服飾、電子電器...資深的行業産品營銷經(jīng)驗與專業的推廣運營能(néng)力,給您更好(hǎo)保障!

文章點評

點評文章,寫評論得積分,赢禮品!

  • 暫無【C++信息學(xué)奧賽培訓】數據排序之冒泡排序(Bubble Sort)詳解以及實例解析點評 + 登錄後(hòu)點評
  • Contact Us

    多一份參考,總有益處。

    聯系QIGOO,免費獲得專屬《策劃方案》及報價。

    走過(guò)十六年曆程的互聯網整合營銷機構,以技術與思想,提升您網站的廣度傳播與深度。

    咨詢問題或預約面(miàn)談,可以通過(guò)以下方式聯系我們。

    網站首頁

    圻谷案例

    建站方案

    網站建設

    電商平台

    系統開(kāi)發(fā)

    資訊專題

    了解圻谷

    聯系圻谷

    淄博網站建設微信

    關于我們 | 聯系我們

    © 2019 圻谷網絡 All Rights Reserved.

    技術支持:圻谷網絡

    關注圻谷網絡獲得全面(miàn)的咨詢服務!
    淄博營銷型網站建設
    微信号:15589330185