91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

PHP集合的笛卡爾積運算方法是什么

PHP
小樊
82
2024-08-14 13:52:38
欄目: 編程語言

在PHP中,可以使用多個數組的笛卡爾積運算方法來獲取它們的所有可能組合。這里提供一個簡單的方法來實現笛卡爾積運算:

function cartesian_product($arrays) {
    $result = array();
    $arrays = array_values($arrays);
    $sizeIn = sizeof($arrays);
    $size = $sizeIn > 0 ? 1 : 0;
    foreach ($arrays as $array) {
        $size = $size * sizeof($array);
    }
    for ($i = 0; $i < $size; $i ++) {
        $result[$i] = array();
        for ($j = 0; $j < $sizeIn; $j ++) {
            array_push($result[$i], current($arrays[$j]));
        }
        for ($j = ($sizeIn -1); $j >= 0; $j --) {
            if (next($arrays[$j])) {
                break;
            } elseif (isset ($arrays[$j])) {
                reset($arrays[$j]);
            }
        }
    }
    return $result;
}

$arrays = array(
    array('red', 'green'),
    array('apple', 'orange', 'banana'),
    array('small', 'medium', 'large')
);

$cartesian_product = cartesian_product($arrays);

foreach ($cartesian_product as $product) {
    echo implode(' ', $product) . "\n";
}

在這個示例中,函數cartesian_product接受一個包含多個數組的數組作為參數,并返回這些數組的笛卡爾積。然后,通過遍歷獲取的笛卡爾積,將其輸出到控制臺。

0
泊头市| 安阳市| 池州市| 响水县| 谷城县| 新乡县| 灌南县| 固安县| 台中县| 大英县| 光泽县| 阳高县| 广安市| 文安县| 威远县| 井冈山市| 长白| 邵武市| 砚山县| 三江| 武乡县| 邹城市| 柳河县| 洛宁县| 南漳县| 许昌县| 蓬莱市| 邳州市| 洪洞县| 盐山县| 石泉县| 十堰市| 井陉县| 喜德县| 醴陵市| 绥德县| 焦作市| 安平县| 习水县| 崇文区| 项城市|