簡體   English   中英

如何在 PHP 中從多維數組中找到 2 個最小數字行和列

[英]How To Find 2 Minimum Numbers Row and Column From Array Multidimensional in PHP

我在 PHP 中有一個多維數組,如下所示

$tabel = array(
             array(8,10,9),
             array(10,8,3)
         );

我想從該數組中按行和列找​​到 2 個最小數字。

在它之前我只需要從沒有數組的多維計算,代碼如下

<?php
    $baris1 = array(8,16,20,10,10);
    $n1 = $n2 = 1000 ; 
    $m1 = $m2 = -1 ;
    for ($i = 0 ; $i < count($array); $i++) {
            $x = $array[$i] ;      
            if ($x <= $n1){
                $n2 = $n1 ;            
                $n1 = $x ;
            } elseif ($x < $n2){
                $n2 = $x;
            }
    }
    echo "Min Number = $n1 $n2<br>";

一種簡單的方法是將它們全部合並到一個數組中。

$all = array_merge(...$tabel);

// or for PHP < 5.6
// $all = call_user_func_array('array_merge', $tabel);

然后你可以對它進行排序並取前兩個值。

sort($all);
$min_two = array_slice($all, 0, 2);

對於您的輸入示例,其中$tabel = [[8,10,9], [10,8,3]]; ,結果將是[3, 8]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM