如何将数据从一维数组复制到二维数组?
假设有一个数组,即a[10000]
具有类似值的
[ 1,2,3,55,66,77,88, ... ... , 9999]
值可以重复......
现在我想将这个现在包含 10,000 个值的数组转换为具有 100 行和 100 列的二维数组。
之后
是否可以SELECTION SORT
在二维数组上实现 a ?
for($i = 0; $i<100; $i++)
{
for($j = 0; $j<100; $j++)
{
$indice = $j + 100 * $i;
$newArray[ $i ][ $j ] = $oldArray[ $indice ];
}
}
定义两个循环并做一些乘法
for ($i=0; $i< 100; $i++) {
for ($j=0; $j< 100; $j++) {
$twoDarray[$i][$j] = $oneDarray[$i*100 + $j];
}
}
要对多维数组进行排序,请使用 array_multisort。这是手册页:http ://www.php.net/manual/en/function.array-multisort.php
只是更多一种变体:
foreach($a as $k=>$v){
$b[(int)($k/100)][$k%100] = $v;
}
你可以尝试这样的事情:
假设 $a = array(1,2,3,4,5....1000)
$b = 0;
$c = 0;
foreach ($a as $new_number){
if ($b < 100){
$b ++;
} else {
$b = 1;
$c ++;
}
$new_array[$c][$b] = $new_number;
}