我覺得它應該是非常簡單明顯的東西,但是在最後半個小時內就停留在這一點上,無法繼續前進。根據項目索引將數組拆分爲N組的算法
我需要的是根據元素索引將一組元素分成N個組。
例如,我們有30種元素[E1,E2,... E30],具有被劃分爲N = 3組這樣的陣列:
group1: [e1, ..., e10]
group2: [e11, ..., e20]
group3: [e21, ..., e30]
我想出了討厭的混亂像這樣爲N = 3(僞語言,我離開了乘法0和1只爲澄清):
for(i=0;i<array_size;i++) {
if(i>=0*(array_size/3) && i<1*(array_size/3) {
print "group1";
} else if(i>=1*(array_size/3) && i<2*(array_size/3) {
print "group2";
} else if(i>=2*(array_size/3) && i<3*(array_size/3)
print "group3";
}
}
但什麼是正確的通用解決方案?
謝謝。
這個問題最重要的一個教訓是,邊界條件,短的(人爲的)期限和缺乏單元測試是一個致命的組合。 – 2008-11-27 02:23:47
你到底想做什麼:分成3個小陣列,或打印「groupI」30次? – blabla999 2009-01-13 20:35:02