12 {
13 float swapMemory = 0;
14 float temp;
15
16 temp = tempArray[i];
17 index = i;
18
19 for (j = i; j < n; j++)
20 {
21 if ((temp < tempArray[j]) && (sortResult[j] == 0))
22 {
23 temp = tempArray[j];
24 index = j;
25 }
26 }
27
28 if (sortResult[index] == 0)
29 {
30 sortResult[index] = ++k;
31 }
32 }
33
34 for (i = 0; i < n; i++)
35 {
36 if (sortResult[i] == 0)
37 {
38 sortResult[i] = ++k;
39 }
40 }
41
42 return;
43 }
修改后最大的一個(gè)改變是沒(méi)有繼續(xù)沿用直接對(duì)w[i]排序,而是用w[i]的一個(gè)映射數(shù)組sortResult[i]。sortResult[i]中元素值存放的是根據(jù)效益計(jì)算得w[i]的大小順序!這樣w[i]原有的值和位置都沒(méi)有改變,從而使算法得以實(shí)現(xiàn)!
至于有沒(méi)有更好的實(shí)現(xiàn)版本,還在探索中!
#include
相關(guān)推薦:2011計(jì)算機(jī)等級(jí)二級(jí)C語(yǔ)言五套模擬試題及答案
計(jì)算機(jī)等級(jí)考試二級(jí)C語(yǔ)言歷年真題匯總(2005-2010)
2011年計(jì)算機(jī)等級(jí)考試二級(jí)C語(yǔ)言常見(jiàn)問(wèn)題匯總
計(jì)算機(jī)等級(jí)考試二級(jí)C語(yǔ)言常見(jiàn)知識(shí)點(diǎn)總結(jié)
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |