我觉得它应该是非常简单明显的东西,但是在最后半个小时内就停留在这一点上,无法继续前进。根据项目索引将数组拆分为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