PHP实现的简单排列组合算法应用示例

Irene ·
更新时间:2024-09-21
· 579 次阅读

本文实例讲述了PHP实现的简单排列组合算法应用。分享给大家供大家参考,具体如下:

一、问题:

给你一个40斤的西瓜,给3个人分,有多少种分法?

二、PHP实现代码:

<?php $aa = range(1,40); $bb = array(); foreach($aa as $k=>$val){ foreach($aa as $v){ foreach($aa as $vl){ $sum = $val+$v+$vl; if($sum == 40){ $bb[$k][0] = $val; $bb[$k][1] = $v; $bb[$k][2] = $vl; } } } } echo '<pre>'; print_r($bb); exit; ?>

运行结果如下:

Array ( [0] => Array ( [0] => 1 [1] => 38 [2] => 1 ) [1] => Array ( [0] => 2 [1] => 37 [2] => 1 ) [2] => Array ( [0] => 3 [1] => 36 [2] => 1 ) [3] => Array ( [0] => 4 [1] => 35 [2] => 1 ) [4] => Array ( [0] => 5 [1] => 34 [2] => 1 ) [5] => Array ( [0] => 6 [1] => 33 [2] => 1 ) [6] => Array ( [0] => 7 [1] => 32 [2] => 1 ) [7] => Array ( [0] => 8 [1] => 31 [2] => 1 ) [8] => Array ( [0] => 9 [1] => 30 [2] => 1 ) [9] => Array ( [0] => 10 [1] => 29 [2] => 1 ) [10] => Array ( [0] => 11 [1] => 28 [2] => 1 ) [11] => Array ( [0] => 12 [1] => 27 [2] => 1 ) [12] => Array ( [0] => 13 [1] => 26 [2] => 1 ) [13] => Array ( [0] => 14 [1] => 25 [2] => 1 ) [14] => Array ( [0] => 15 [1] => 24 [2] => 1 ) [15] => Array ( [0] => 16 [1] => 23 [2] => 1 ) [16] => Array ( [0] => 17 [1] => 22 [2] => 1 ) [17] => Array ( [0] => 18 [1] => 21 [2] => 1 ) [18] => Array ( [0] => 19 [1] => 20 [2] => 1 ) [19] => Array ( [0] => 20 [1] => 19 [2] => 1 ) [20] => Array ( [0] => 21 [1] => 18 [2] => 1 ) [21] => Array ( [0] => 22 [1] => 17 [2] => 1 ) [22] => Array ( [0] => 23 [1] => 16 [2] => 1 ) [23] => Array ( [0] => 24 [1] => 15 [2] => 1 ) [24] => Array ( [0] => 25 [1] => 14 [2] => 1 ) [25] => Array ( [0] => 26 [1] => 13 [2] => 1 ) [26] => Array ( [0] => 27 [1] => 12 [2] => 1 ) [27] => Array ( [0] => 28 [1] => 11 [2] => 1 ) [28] => Array ( [0] => 29 [1] => 10 [2] => 1 ) [29] => Array ( [0] => 30 [1] => 9 [2] => 1 ) [30] => Array ( [0] => 31 [1] => 8 [2] => 1 ) [31] => Array ( [0] => 32 [1] => 7 [2] => 1 ) [32] => Array ( [0] => 33 [1] => 6 [2] => 1 ) [33] => Array ( [0] => 34 [1] => 5 [2] => 1 ) [34] => Array ( [0] => 35 [1] => 4 [2] => 1 ) [35] => Array ( [0] => 36 [1] => 3 [2] => 1 ) [36] => Array ( [0] => 37 [1] => 2 [2] => 1 ) [37] => Array ( [0] => 38 [1] => 1 [2] => 1 ) )

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数据结构与算法教程》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

您可能感兴趣的文章:php全排列递归算法代码使用php计算排列组合的方法浅谈PHP的排列组合(如输入a,b,c 输出他们的全部组合)php通过排列组合实现1到9数字相加都等于20的方法php求数组全排列,元素所有组合的方法总结PHP输出多个元素的排列或组合的方法php求数组全排列,元素所有组合的方法PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能PHP实现字符串的全排列详解php实现的生成排列算法示例



排列 示例 排列组合 算法 PHP

需要 登录 后方可回复, 如果你还没有账号请 注册新账号