国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

ACM_ICPC競(jìng)賽中sort函數(shù)的簡(jiǎn)要介紹

2019-04-26 05:03焦靜頤崔馭賈子璇
電子技術(shù)與軟件工程 2019年4期
關(guān)鍵詞:運(yùn)算符數(shù)組排序

文/焦靜頤 崔馭 賈子璇

1 sort函數(shù)的介紹及優(yōu)點(diǎn)

sort函數(shù)是STL中用于對(duì)給定區(qū)間進(jìn)行排序的函數(shù),所在頭文件是#include 。主要原理是快速排序,但又不是簡(jiǎn)單的快速排序,它還結(jié)合了插入排序和堆排序,根據(jù)需要排序?qū)ο蟮牟煌闆r,自動(dòng)選用合適的排序方法。所以雖然理論上sort函數(shù)和快速排序的復(fù)雜度都是O(n*logn),但在實(shí)際應(yīng)用中,sort函數(shù)比快速排序的效率更高,實(shí)用方法簡(jiǎn)單,因此更加實(shí)用。

2 sort函數(shù)的使用方法

sort函數(shù)有三個(gè)參數(shù)

(1)要排序數(shù)組的起始地址。

(2)要排序數(shù)組的結(jié)束地址,即最后一個(gè)要排序地址的下一個(gè)地址。

(3)排序方法,可以是從大到小,也可以自定義,也可以不寫,如果不寫,默認(rèn)的排序方式是從小到大排序。

sort函數(shù)使用模板是:

sort(start,end,cmp);

對(duì)區(qū)間[f irst,last)根據(jù)cmp的方式進(jìn)行排序。

3 sort函數(shù)的用法舉例

3.1 直接使用

整型默認(rèn)為從小到大排序,字符型根據(jù)ASCII碼值進(jìn)行排序。

N為整型常數(shù),f irst為起始地址,last為結(jié)束地址。

3.2 自定義排序

3.2.1 自定義比較函數(shù)

系統(tǒng)默認(rèn)為x>y返回true,故程序是從大到小排序。

3.2.2 重載比較運(yùn)算符

這種方法用于結(jié)構(gòu)體中。

根據(jù)成員a的數(shù)值由大到小排序,當(dāng)a的數(shù)值相同時(shí),根據(jù)成員b的數(shù)值由小到大排序。

4 結(jié)束語(yǔ)

sort函數(shù)在使用上帶來(lái)極大便利,因?yàn)楦咝剩褂渺`活的特點(diǎn),無(wú)論是在日常開發(fā)中還是算法競(jìng)賽中,sort函數(shù)都能發(fā)揮很大的作用。本文介紹了sort的使用方法,只要加以練習(xí),就可以將sort函數(shù)更好的應(yīng)用。掌握好sort函數(shù)對(duì)學(xué)生學(xué)習(xí)其他STL函數(shù)也有很大幫助,可以提高學(xué)生的編程能力。

猜你喜歡
運(yùn)算符數(shù)組排序
JAVA稀疏矩陣算法
排序不等式
老祖?zhèn)魇诨具\(yùn)算符
JAVA玩轉(zhuǎn)數(shù)學(xué)之二維數(shù)組排序
恐怖排序
用手機(jī)插頭的思路學(xué)習(xí)布爾運(yùn)算符
Excel數(shù)組公式在林業(yè)多條件求和中的應(yīng)用
尋找勾股數(shù)組的歷程
表達(dá)式求值及符號(hào)推導(dǎo)
C++中運(yùn)算符的重載應(yīng)用