冒泡排序 - 数据结构和算法88
生活随笔
收集整理的這篇文章主要介紹了
冒泡排序 - 数据结构和算法88
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
冒泡排序
?讓編程改變世界
Change the world by program
?
冒泡排序
? 記得小甲魚在講《零基礎入門學習Python》的時候,在講《零基礎入門學習C語言》的時候,在講《零基礎入門學習Delphi》的時候, 在這些編程語言的講解中,都不約而同的會提及冒泡排序算法。 那么作為《數據結構和算法》排序章節要講的第一個內容,那肯定非冒泡排序不可了! ? 冒泡排序的基本思想是:兩兩相鄰記錄的關鍵字,如果反序則交換,直到沒有反序的記錄為止。 冒泡排序的實現在細節上可以有很多種變化,我們從最原始的說起,剛剛的這一種是大部分初學者容易一下子就寫出來的,但注意,嚴格意義上來說并不符合冒泡排序的定義! ? 大家看到了,因為它并不滿足”兩兩比較相鄰記錄“的指導思想!我們來看下正宗的冒泡算法演示:冒泡排序.swf ?冒泡排序的要點:
1. 兩兩注意是相鄰的兩個元素的意思 2. 如果有n個元素需要比較n-1次,每一輪減少1次比較 3. 既然叫冒泡排序,那就是從下往上兩兩比較,所以看上去就跟泡泡往上冒一樣。 ? 我們一起來動手實現“正宗的”冒泡排序算法并比較兩者的效率差異吧! 我們驚奇的發現其實兩者效率木有不同丫!但是按理論來說,正版的東西應該比較有優勢才對丫…… ? 嗯,沒錯,有些朋友發現了,我們這個正宗的版本其實是還有升級的潛力的! 就像咱魚C論壇的終身VIP會員一樣,隨著教學服務的不斷增加,價值也在不斷上升! ?優化冒泡排序算法
? 我們發現如果使用正宗的冒泡排序算法,當i等于1執行完的時候,我們發現程序只進行兩兩相鄰元素的比較,而不用進行任何移動,所以完全可以不用再繼續循環。 ? 有些朋友就可能就會說了,那屌絲版的冒泡排序難道就不能這么操作嗎?!(看,屌絲版的冒泡排序每一次循環都是指定的元素跟其他每一個元素依次進行比較,如果沒有發生移動,只能證明該元素比其他元素小,但完全說明不了其他元素之間的關系,對吧?!) ? O~K~這節課就講解到這里,非常感謝大家的支持。 ...... 省略,具體請看視頻講解 ...... [buy]?獲得所有教學視頻、課件、源代碼等資源打包?[/buy] [Downlink href='http://kuai.xunlei.com/d/BdsUAwIFUwAY9vhSb4b']視頻下載[/Downlink] [Downlink href='http://urlxf.qq.com/?m2iuAnA']備胎下載[/Downlink]轉載于:https://www.cnblogs.com/LoveFishC/p/3846403.html
總結
以上是生活随笔為你收集整理的冒泡排序 - 数据结构和算法88的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电音效果
- 下一篇: 爬取链家在北京每个地区的房屋信息