某公司面試程序題如下:公司有10000名員工,請(qǐng)?jiān)O(shè)計(jì)一個(gè)算法對(duì)該公司員工的年齡做遞增排序輸出.小劉設(shè)計(jì)了一個(gè)算法:利用數(shù)組b記錄每個(gè)數(shù)據(jù)出現(xiàn)的次數(shù),數(shù)組b下標(biāo)范圍為年齡范圍,然后根據(jù)每個(gè)年齡值的個(gè)數(shù)進(jìn)行排序.
例如,有如下年齡存在數(shù)組a中:
a(1) | a(2) | a(3) | a(4) | a(5) | a(6) | a(7) | a(8) | a(9) | a(10) |
20 | 19 | 18 | 19 | 15 | 12 | 15 | 20 | 17 | 19 |
利用一個(gè)數(shù)組b(b(10 To 20))記錄每個(gè)數(shù)出現(xiàn)的次數(shù):
b(10) | b(11) | b(12) | b(13) | b(14) | b(15) | b(16) | b(17) | b(18) | b(19) | b(20) |
0 | 0 | 1 | 0 | 0 | 2 | 0 | 1 | 1 | 3 | 2 |
根據(jù)數(shù)組b對(duì)數(shù)組a進(jìn)行排序:
a(1) | a(2) | a(3) | a(4) | a(5) | a(6) | a(7) | a(8) | a(9) | a(10) |
12 | 15 | 15 | 17 | 18 | 19 | 19 | 19 | 20 | 20 |
(1)為實(shí)現(xiàn)程序功能,請(qǐng)?jiān)趧澗€①②處填入合適的代碼.
(2)加框處③代碼有錯(cuò),請(qǐng)修正.
①處應(yīng)填入的代碼為
b(a(i))=b(a(i))+1
b(a(i))=b(a(i))+1
.
②處應(yīng)填入的代碼為
j=j+1
j=j+1
.
③處的代碼修改為
b(i)=b(i)-1
b(i)=b(i)-1
.