有一種簡(jiǎn)單的排序算法,叫做計(jì)數(shù)排序(count Sorting)。這種排序算法對(duì)一個(gè)待排序的表(用數(shù)組表示)進(jìn)行排序,并將排序結(jié)果存放到另一個(gè)新的表中。必須注意的是,表中所有待排序的關(guān)鍵碼互不相同。計(jì)數(shù)排序算法針對(duì)表中的每個(gè)記錄,掃描待排序的表一趟,統(tǒng)計(jì)表中有多少個(gè)記錄的關(guān)鍵碼比該記錄的關(guān)鍵碼小。假設(shè)針對(duì)某一個(gè)記錄,統(tǒng)計(jì)出的計(jì)數(shù)值為 c,那么,這個(gè)記錄在新的有序表中的合適的存放位置即為 c。
(1)給出適用于計(jì)數(shù)排序的數(shù)據(jù)表定義;
(2)使用C++語(yǔ)言編寫(xiě)實(shí)現(xiàn)計(jì)數(shù)排序的算法。
您可能感興趣的試卷
你可能感興趣的試題
最新試題
對(duì)以下幾個(gè)關(guān)鍵字的序列進(jìn)行快速排序,以第一個(gè)元素為基準(zhǔn),一次劃分效果不好的是()
已知帶頭結(jié)點(diǎn)的鏈隊(duì)列指針Q,則該非空隊(duì)列取隊(duì)頭元素操作的語(yǔ)句是()
對(duì)給定的數(shù)據(jù)集{84,47,25,15,21}排序,進(jìn)行2趟簡(jiǎn)單選擇排序的結(jié)果是()
在中序遍歷非遞歸算法中,在進(jìn)入子樹(shù)進(jìn)行訪問(wèn)前,需要在自定義棧中保存()
若三維數(shù)組a[4][5][6]的基地址是100,每個(gè)元素占用2個(gè)存儲(chǔ)單元,則數(shù)組a中最后一個(gè)元素的存儲(chǔ)地址是()。
在打印楊輝三角形前N行的算法中,需要申請(qǐng)一個(gè)N*N的二維數(shù)組存放楊輝三角形N行數(shù)據(jù)。
頭指針為L(zhǎng)的帶頭結(jié)點(diǎn)的雙循環(huán)鏈表,結(jié)點(diǎn)的前趨指針域?yàn)閜rior,后繼指針域?yàn)閚ext,判斷該鏈表為空的條件是()。
一棵二叉樹(shù)的先序序列是:CEDBA,中序序列是:DEBAC ,則該二叉樹(shù)的后序序列是()
已知某二叉樹(shù)的后序遍歷序列是CEFDBA,中序遍歷序列是CBEDFA。與該二叉樹(shù)對(duì)應(yīng)的樹(shù)或森林中,葉子的數(shù)目是()個(gè)。
已知帶頭結(jié)點(diǎn)的鏈隊(duì)列指針Q,則該隊(duì)列做新元素結(jié)點(diǎn)s進(jìn)隊(duì)操作的語(yǔ)句是()