一、排序的基本概念和分類(lèi)

所謂排序,就是使一串記錄,按照其中的某個(gè)或某些關(guān)鍵字的大小,遞增或遞減的排列起來(lái)的操作。排序算法,就是如何使得記錄按照要求排列的方法。

排序的穩(wěn)定性:
經(jīng)過(guò)某種排序后,如果兩個(gè)記錄序號(hào)同等,且兩者在原無(wú)序記錄中的先后秩序依然保持不變,則稱(chēng)所使用的排序方法是穩(wěn)定的,反之是不穩(wěn)定的。

內(nèi)排序和外排序
內(nèi)排序:排序過(guò)程中,待排序的所有記錄全部放在內(nèi)存中
外排序:排序過(guò)程中,使用到了外部存儲(chǔ)。
通常討論的都是內(nèi)排序。

影響內(nèi)排序算法性能的三個(gè)因素

  • 時(shí)間復(fù)雜度:即時(shí)間性能,高效率的排序算法應(yīng)該是具有盡可能少的關(guān)鍵字比較次數(shù)和記錄的移動(dòng)次數(shù)

  • 空間復(fù)雜度:主要是執(zhí)行算法所需要的輔助空間,越少越好。

  • 算法復(fù)雜性。主要是指代碼的復(fù)雜性。

根據(jù)排序過(guò)程中借助的主要操作,可把內(nèi)排序分為:

  • 插入排序

  • 交換排序

  • 選擇排序

  • 歸并排序

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開(kāi)發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式