php多个数组求组合数(Php数组合并)

本文目录一览:

PHP 多个数组的排列组合

$a = array(1,2,3,4,5,6,7);

$b = array(1,2,3);

$c = array(1,2,3,4,5,6,7,8,9,10);

$d = array($a,$b,$c);

//计算每一个数组的长度

$len = 1;

$arrLen = count($d); //需要排列数组有多少个

$recIndex = null; //记录当前该取的位置

//foreach 计数

$count_3 = 0;

foreach ($d as $key = $value) {

$lenRec[$count_3] = count($value);

$len = $lenRec[$count_3]*$len;

$recIndex[] = 0;//第一次全部取第0个

$count_3++;

}

//算出% 的值

$count = 1;

foreach ($lenRec as $key = $value) {

$moduloVal = 1;

if($arrLen == $count){

$modulo[] = count($d[$arrLen-1]); //等于最后一个的长度

}else{

$count_1 = 1;

foreach ($lenRec as $index = $item) {

$count_1 $count $moduloVal = $moduloVal*$item;

$count_1 ++;

}

$modulo[] = $moduloVal;

}

$count ++;//为了防止$d key是有值的 不是自然序列 需要计数

}

$i = 1;

while ( $i = $len) {

$html = ”;

$count_2 = 0;// 取模

$temp = ”;

foreach ($d as $value) {

$html .= $value[$recIndex[$count_2]%$lenRec[$count_2]].”,”;

$count_2 ++;

}

echo $html.”br”;

foreach ($modulo as $key = $value) {

if($i%$value == 0 $key $arrLen – 1 ){

$recIndex[$key] = $recIndex[$key] +1;

}

if($key == $arrLen – 1){

if($i%$value == 0){

$recIndex[$key] = 0;

}else{

$recIndex[$key] = $recIndex[$key] +1;

}

}

}

$i ++;

//改变获取的位置

}

求PHP 数组的任意组合的算法函数

function getRank($arr, $len=0, $str=””) {

global $arr_getrank;

$arr_len = count($arr);

if($len == 0){

$arr_getrank[] = $str;

}else{

for($i=0; $i$arr_len; $i++){

$tmp = array_shift($arr);

if (empty($str))

{

getRank($arr, $len-1, $tmp);

}

else

{

getRank($arr, $len-1, $str.”,”.$tmp);

}

// array_push($arr, $tmp);

}

}

}

测试:

$words = array(‘a1′,’b2′,’c3′,’d4′,’e5’);

$arr_getrank = array();

getRank($words, 3);

print_r($arr_getrank);

输出:

Array

(

[0] = a1,b2,c3

[1] = a1,b2,d4

[2] = a1,b2,e5

[3] = a1,c3,d4

[4] = a1,c3,e5

[5] = a1,d4,e5

[6] = b2,c3,d4

[7] = b2,c3,e5

[8] = b2,d4,e5

[9] = c3,d4,e5

)

php 如何计算数组中数字的组合?

$arr = array(1,2,2,3,3,3,4,5,3,2,3,3);$num = count(array_count_values($arr));// 或者$num = count(array_unique($arr));

php 多组数字如何计算所有的组合形式。如:

$A = [‘红色’,’黄色’];

$B = [‘M’,’L’,’XL’];

$C = [‘轻’,’重’];

// 先将各属性值处理成一个整体

$list[‘A’] = $A;

$list[‘B’] = $B;

$list[‘C’] = $C;

$res = array();

foreach ($list as $k = $v) {

   $res = getCombinationToString($v);

}

/**

 * 获取组合的结果

 * [@author]() 18y

 */

function getCombinationToString($val){    

    // 保存上一个的值

    static $res = array();    

    if(empty($res))

    {

        $res = $val;

    }else{        

            // 临时数组保存结合的结果

        $list = array();        

        foreach ($res as $k = $v) {            

            foreach ($val as $key = $value) {

                $list[$k.’_’.$key] = $v.’_’.$value;     

            }

        }

        $res = $list;

    }    

    return $res;

}

详情看全文吧,这里写有点乱 php 多组数组算所有的组合形式

PHP中如何列出一个数组的所有规定组合?

嵌套循环,代码如下:

$arr = array(‘0’=array(8,9),’1’=array(5),’2’=array(1,2));

$arr2 = array();

foreach ($arr[0] as $v1) {

foreach($arr[1] as $v2){

foreach($arr[2] as $v3){

$arr2[] = $v1.$v2.$v3;

}

}

}

print_r($arr2);

原创文章,作者:ZX7G8,如若转载,请注明出处:https://www.506064.com/n/128467.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
ZX7G8ZX7G8
上一篇 2024-10-03 23:25
下一篇 2024-10-03 23:25

相关推荐

  • PHP和Python哪个好找工作?

    PHP和Python都是非常流行的编程语言,它们被广泛应用于不同领域的开发中。但是,在考虑择业方向的时候,很多人都会有一个问题:PHP和Python哪个好找工作?这篇文章将从多个方…

    编程 2025-04-29
  • 为什么Python不能编译?——从多个方面浅析原因和解决方法

    Python作为很多开发人员、数据科学家和计算机学习者的首选编程语言之一,受到了广泛关注和应用。但与之伴随的问题之一是Python不能编译,这给基于编译的开发和部署方式带来不少麻烦…

    编程 2025-04-29
  • Python导入数组

    本文将为您详细阐述Python导入数组的方法、优势、适用场景等方面,并附上代码示例。 一、numpy库的使用 numpy是Python中一个强大的数学库,其中提供了非常丰富的数学函…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29
  • Python返回数组:一次性搞定多种数据类型

    Python是一种多用途的高级编程语言,具有高效性和易读性的特点,因此被广泛应用于数据科学、机器学习、Web开发、游戏开发等各个领域。其中,Python返回数组也是一项非常强大的功…

    编程 2025-04-29
  • Python合并多个相同表头文件

    对于需要合并多个相同表头文件的情况,我们可以使用Python来实现快速的合并。 一、读取CSV文件 使用Python中的csv库读取CSV文件。 import csv with o…

    编程 2025-04-29
  • Python去掉数组的中括号

    在Python中,被中括号包裹的数据结构是列表,列表是Python中非常常见的数据类型之一。但是,有些时候我们需要将列表展开成一维的数组,并且去掉中括号。本文将为大家详细介绍如何用…

    编程 2025-04-29
  • Python操作数组

    本文将从多个方面详细介绍如何使用Python操作5个数组成的列表。 一、数组的定义 数组是一种用于存储相同类型数据的数据结构。Python中的数组是通过列表来实现的,列表中可以存放…

    编程 2025-04-29
  • PHP怎么接币

    想要在自己的网站或应用中接受比特币等加密货币的支付,就需要对该加密货币拥有一定的了解,并使用对应的API进行开发。本文将从多个方面详细阐述如何使用PHP接受加密货币的支付。 一、环…

    编程 2025-04-29
  • 从多个方面用法介绍yes,but let me review and configure level of access

    yes,but let me review and configure level of access是指在授权过程中,需要进行确认和配置级别控制的全能编程开发工程师。 一、授权确…

    编程 2025-04-29

发表回复

登录后才能评论