Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/236.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
“12”。这可以通过使用“$iI进行一些基准测试来解决。使用array\u count\u values()使算法加快了20%,而计算min和max在计数循环中使算法减慢了20%。顺便说一句,在PHP中不是O(n)。是O(nlogn)相反。May与混合哈希_Php_Algorithm_Sorting_Data Structures - Fatal编程技术网

“12”。这可以通过使用“$iI进行一些基准测试来解决。使用array\u count\u values()使算法加快了20%,而计算min和max在计数循环中使算法减慢了20%。顺便说一句,在PHP中不是O(n)。是O(nlogn)相反。May与混合哈希

“12”。这可以通过使用“$iI进行一些基准测试来解决。使用array\u count\u values()使算法加快了20%,而计算min和max在计数循环中使算法减慢了20%。顺便说一句,在PHP中不是O(n)。是O(nlogn)相反。May与混合哈希,php,algorithm,sorting,data-structures,Php,Algorithm,Sorting,Data Structures,“12”。这可以通过使用“$iI进行一些基准测试来解决。使用array\u count\u values()使算法加快了20%,而计算min和max在计数循环中使算法减慢了20%。顺便说一句,在PHP中不是O(n)。是O(nlogn)相反。May与混合哈希表而非经典数组的内部使用有关。是的,从快速比较中,我看不出有什么区别。它是因为样式错误还是仅仅是错误……如果它是错误的,为什么会得到批准?他是对的!for-test不正确……在元素“12”上面的答案中“他不见了。测试的权利是“$i” $ar =


“12”。这可以通过使用“$iI进行一些基准测试来解决。使用
array\u count\u values()
使算法加快了20%,而计算
min
max
在计数循环中使算法减慢了20%。顺便说一句,在PHP中不是O(n)。是O(nlogn)相反。May与混合哈希表而非经典数组的内部使用有关。是的,从快速比较中,我看不出有什么区别。它是因为样式错误还是仅仅是错误……如果它是错误的,为什么会得到批准?他是对的!for-test不正确……在元素“12”上面的答案中“他不见了。测试的权利是“$i”
$ar = array(7, 2, 0, 3, 8, 0, 12, 7, 6, 7);
$count = array();
foreach ($ar as $v)
    $count[$v]++;
$sorted = array();    
foreach ($count as $v => $c)
    for ($i = 0; $i < $c; $i++)
        $sorted[] = $v;
$ar = array(7, 2, 0, 3, 8, 0, 12, 7, 6, 7);
$sorted = $ar;
sort($sorted);
var_dump($ar);
var_dump($sorted);
array(7,2,0,3,8,0,12,7,6,7);
array(0,0,2,3,6,7,7,7,8,12);
$sorted = $ar;
sort($sorted);
$ar = array(7, 2, 0, 3, 8, 0, 12, 7, 6, 7);

$count = array();
foreach ($ar as $v) {
    // add each number in $ar to $count.
    // the first number in $ar is 7, so 7 will be the first number in $count.
    // because 7 is in $ar 3 times, $count[7] == 3.
    $count[$v]++;
}

// the output of print_r will be very revealing:
print_r($count);
/*Array
(
    [7] => 3
    [2] => 1
    [0] => 2
    [3] => 1
    [8] => 1
    [12] => 1
    [6] => 1
)*/

$sorted = array();    
foreach ($count as $v => $c) {
    // the first entry: $count[7] == 3
    // so add 7 to $sorted 3 times.
    // the second entry: $count[2] == 1
    // so add 2 to $sorted 1 time.
    // etc.
    for ($i = 0; $i < $c; $i++) {
        $sorted[] = $v;
    }
}
$ar = array(7, 2, 0, 3, 8, 0, 12, 7, 6, 7);
$count = array();
foreach ($ar as $v) {
    $count[$v] = isset($count[$v]) ? $count[$v] + 1 : 1;
}
$sorted = array();
$min = min($ar);
$max = max($ar);
for ($i=$min; $i<=$max; $i++) {
    if (isset($count[$i])) {
        for ($j=0; $j<$count[$i]; $j++) {
            $sorted[] = $i;
        }
    }
}
$ar = array(7, 2, 0, 3, 8, 0, 12, 7, 6, 7);
$count = array();
foreach ($ar as $v) {
    $count[$v] = isset($count[$v]) ? $count[$v] + 1 : 1;
}
$sorted = array();
$min = min($ar);
$max = max($ar);
for ($i=$min; $i  <=   $max; $i++) {
    if (isset($count[$i])) {
        for ($j=0; $j<$count[$i]; $j++) {
            $sorted[] = $i;
        }
    }
}