我有一个简单的数组,我正在尝试构建一个函数以将其递增到例如最大值,并且我无法对2个键重用相同的数字。但到目前为止,我几乎没有取得什么成功。这就是我现在所拥有的。$iteration=[0,1,2,3,4]$max=12
//$iteration is my array and $max is the maximum value a key can have.
IncrementIteration($iteration,$max){
$count=count($iteration);
while($count > 0){
if( ($iteration[($count-1)] < $max) ){
$iteration[($count-1)]++;
break;
}
$count--;
}
return $iteration;
}
但这绝不会重置递增的键后面的键,并且不会考虑该数字是否已使用。
以下是我正在寻找的结果示例:
print_r(IncrementIteration([0,1,2],12))
输出:数组 ( [0] => 0 [1] => 1 [2] => 3 )
print_r(IncrementIteration([0,1,12],12))
输出:数组 ( [0] => 1 [1] => 2 [2] => 3 )
print_r(IncrementIteration([0,11,12],12))
输出:数组 ( [0] => 1 [1] => 2 [2] => 3 )
这将是可能的最高增量。
print_r(IncrementIteration([10,11,12],12))
输出:数组 ( [0] => 10 [1] => 11 [2] => 12 )
感谢您对此代码的任何帮助。
牛魔王的故事
忽然笑