排序算法-- 大总结
生活随笔
收集整理的這篇文章主要介紹了
排序算法-- 大总结
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一、冒泡排序:
1、概念
它重復(fù)地走訪過要排序的數(shù)列,一次比較兩個元素,如果他們的順序錯誤就把他們交換過來。走訪數(shù)列的工作是重復(fù)地進行直到?jīng)]有再需要交換,也就是說該數(shù)列已經(jīng)排序完成。
2、復(fù)雜度分析
若文件的初始狀態(tài)是正序的,一趟掃描即可完成排序。所需的關(guān)鍵字比較次數(shù)?和記錄移動次數(shù)?均達到最小值???。
所以,冒泡排序最好的時間復(fù)雜度為???。
若初始文件是反序的,需要進行?趟排序。每趟排序要進行??次關(guān)鍵字的比較(1≤i≤n-1),且每次比較都必須移動記錄三次來達到交換記錄位置。在這種情況下,比較和移動次數(shù)均達到最大值:
所以,冒泡排序的最壞時間復(fù)雜度為?。 綜上,因此冒泡排序總的平均時間復(fù)雜度為? 3、穩(wěn)定性 冒泡排序就是把小的元素往前調(diào)或者把大的元素往后調(diào)。所以相同元素的前后順序并沒有改變,所以冒泡排序是一種穩(wěn)定排序算法。 二、未完待續(xù)……轉(zhuǎn)載于:https://www.cnblogs.com/12344321hh/p/8690105.html
總結(jié)
以上是生活随笔為你收集整理的排序算法-- 大总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: poj3190 区间贪心 挑战程序设计竞
- 下一篇: shell命令获取结果指定行(指定行结果