詳見 :https://www.cnblogs.com/AlvinZH/p/6784862.html?utm_source=itdadao&utm_medium=referral
此處為學(xué)習(xí)的網(wǎng)址,寫的十分詳細(xì)邑跪,在此感謝作者~
總結(jié)了:
- sort實現(xiàn)原理及簡介
(其實我主要是想去看sort實現(xiàn)原理,別的覺得好就記錄下來了)
時間復(fù)雜度:n*lg(n)
實現(xiàn)原理:sort并不是簡單的快速排序红符,它對普通的快速排序進行了優(yōu)化她奥,此外,它還結(jié)合了插入排序和推排序叉跛。系統(tǒng)會根據(jù)你的數(shù)據(jù)形式和數(shù)據(jù)量自動選擇合適的排序方法阳堕,這并不是說它每次排序只選擇一種方法跋理,它是在一次完整排序中不同的情況選用不同方法,比如給一個數(shù)據(jù)量較大的數(shù)組排序恬总,開始采用快速排序前普,分段遞歸,分段之后每一段的數(shù)據(jù)量達(dá)到一個較小值后它就不繼續(xù)往下遞歸壹堰,而是選擇插入排序拭卿,如果遞歸的太深,他會選擇推排序贱纠。 - 擴展:
1)定義比較函數(shù)(最常用)
就重寫個cmp1记劈,cmp2(結(jié)構(gòu)體)函數(shù)
2)使用標(biāo)準(zhǔn)庫函數(shù)
升序:sort(begin,end,less<data-type>())
降序:sort(begin,end,greater<data-type>())
3)重載結(jié)構(gòu)體或類的比較運算符
分內(nèi)部重載和外部重載
4)聲明比較類(少用)