日期:2014-05-17 浏览次数:20459 次
把一组数据拆分为6组输出算法
?
$groupCount = 6; //组数
$userIdList = array(1, 2, 3, 4, 5, 6, 7, 8, 9,10);
$size = count($userIdList );
$sizeGroupPer = floor($size / $groupCount );//每组被分配的个数
$criticalValue = $size % $groupCount ; //临界值
$startIndex = 0;
$endIndex = 0;
for ($i = 0; $i < $groupCount ; $i++ ) {?
?
??????????? if ($i < $critical) { //表示哪些组可以被多分配
?????????????? $endIndex = $startIndex + $sizeGroupPer + 1;
????????????} else {
??????????????? $endIndex = $startIndex + $sizeGroupPer ;
????????????}
??
????????????$strGroup = "";?
??????????? for ($j = $startIndex ; $j < $endIndex; $j++) {
?????????????? if (($j + 1) == $to) {
?????????????????? $strGroup .= $arryData[$j];
?????????????? } else {
?????????????????? $strGroup .= $arryData[$j].","; ???????????
?????????????? }
??????????? }
?
?????????? $startIndex = $endIndex;
???????? echo?"第 ".$i." 组数据::".$strGroup;?
}
?