一起talk C栗子吧(第二十六回:C語言執行個體--冒泡排序)

來源:互聯網
上載者:User

標籤:c語言   冒泡排序   


各位看官們,大家好,上一回中咱們說的是二分尋找的例子,這一回咱們說的例子是:冒泡排序。閑話休

提,言歸正轉。讓我們一起talk C栗子吧!


我們先來說說什麼是排序,所謂的排序就是把容器中的元素依據一定的規則進行排列。我們還是像以前一

樣舉個日常生活中的例子來說明:現在學校裡基本上都在搞軍訓,我想大家也參加過軍訓,在軍訓前肯定

會讓大家排隊,教官會讓大家依據自己的身高從低到高進行排隊,這樣排出來的隊列比較整齊。在排隊的

過程中就使用了排序,參加軍訓的學生就是容器中元素,排序的規則就是教官定的:依據身高從低到高進

行排隊。排序的結果就是一個整齊的軍訓隊伍。我這麼說,大家明白了嗎?哪個“依據身高從低到高進行排

隊”是怎麼進行的?台下有看官在提問了,看官莫急,你問的問題就是咱們今天要說的內容,在編寫程式的

時候有多種方法可以進行排序,咱們首先講其中的一種:冒泡排序。


冒泡排序的基本原理為:依次比較容器中相鄰的兩個元素,如果這兩個元素不符合排序的規則,那麼交換

這兩個元素在容器中的位置,直到視窗中所有相鄰的元素都符合定序為止。


冒泡排序的實現步驟如下:

1.從容器頭部到尾部遍曆容器,遍曆過程中取出相鄰的兩個元素進行比較;

2.如果這兩個元素不符合排序的規則,那麼交換這兩個元素在容器中的位置;

3.如果這兩個元素符合排序的規則,那麼回到步驟1;

4.反覆進行步驟1到步驟3,直到遍曆完容器中所有的元素為止。


看官們,本文中就不寫代碼了,詳細的代碼放到了我的資源中,大家可以點擊這裡下載使用。冒泡排序的

優點就是簡單易懂,而且容易實現。缺點就是效能相對較低。我在代碼中對冒泡排序進行了最佳化,這樣可

以提高冒泡排序的效能。


各位看官,關於冒泡排序的例子咱們就說到這裡。欲知後面還有什麼例子,且聽下回分解。


著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

一起talk C栗子吧(第二十六回:C語言執行個體--冒泡排序)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.