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


Posted in PHP onJune 20, 2017

本文实例讲述了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无限分类的类
Jan 02 PHP
memcached 和 mysql 主从环境下php开发代码详解
May 16 PHP
PHP中通过HTTP_USER_AGENT判断是否为手机移动终端的函数代码
Feb 14 PHP
让ThinkPHP支持大小写url地址访问的方法
Oct 31 PHP
php+mysqli数据库连接的两种方式
Jan 28 PHP
PHP中配置IIS7实现基本身份验证的方法
Sep 24 PHP
php+ajax实现无刷新数据分页的办法
Nov 02 PHP
Yii控制器中filter过滤器用法分析
Jul 15 PHP
PHP检测数据类型的几种方法(总结)
Mar 04 PHP
php微信开发之关键词回复功能
Jun 13 PHP
yii2的restful api路由实例详解
May 14 PHP
关于Laravel-admin的基础用法总结和自定义model详解
Oct 08 PHP
php提交表单时保留多个空格及换行的文本样式的方法
Jun 20 #PHP
PHP中模糊查询并关联三个select框
Jun 19 #PHP
在laravel中使用Symfony的Crawler组件分析HTML
Jun 19 #PHP
Laravel给生产环境添加监听事件(SQL日志监听)
Jun 19 #PHP
Yii 2.0自带的验证码使用经验分享
Jun 19 #PHP
PHP实现下载远程图片保存到本地的方法
Jun 19 #PHP
Yii2 如何在modules中添加验证码的方法
Jun 19 #PHP
You might like
php中字符查找函数strpos、strrchr与strpbrk用法
2014/11/18 PHP
PHP的关于变量和日期处理的一些面试题目整理
2015/08/10 PHP
thinkphp框架使用JWTtoken的方法详解
2019/10/10 PHP
用jquery与css打造个性化的单选框和复选框
2010/10/20 Javascript
Firefox中autocomplete=&quot;off&quot; 设置不起作用Bug的解决方法
2011/03/25 Javascript
利用JS自动打开页面上链接的实现代码
2011/09/25 Javascript
jQuery学习笔记之jQuery.extend(),jQuery.fn.extend()分析
2014/06/09 Javascript
jquery动态改变div宽度和高度
2015/02/09 Javascript
精通JavaScript的this关键字
2020/05/28 Javascript
jQuery实现只允许输入数字和小数点的方法
2016/03/02 Javascript
Vue.js开发环境搭建
2016/11/10 Javascript
深入理解React高阶组件
2017/09/28 Javascript
[02:07]2018DOTA2亚洲邀请赛主赛事第三日五佳镜头 fy极限反杀
2018/04/06 DOTA
Python的Django框架中if标签的相关使用
2015/07/15 Python
Python 字符串大小写转换的简单实例
2017/01/21 Python
Django的HttpRequest和HttpResponse对象详解
2018/01/26 Python
Python打印“菱形”星号代码方法
2018/02/05 Python
Python cookbook(数据结构与算法)将序列分解为单独变量的方法
2018/02/13 Python
Python实现OpenCV的安装与使用示例
2018/03/30 Python
78行Python代码实现现微信撤回消息功能
2018/07/26 Python
基于Numpy.convolve使用Python实现滑动平均滤波的思路详解
2019/05/16 Python
远程部署工具Fabric详解(支持Python3)
2019/07/04 Python
python检查目录文件权限并修改目录文件权限的操作
2020/03/11 Python
python GUI计算器的实现
2020/10/09 Python
新文化运动的口号
2014/06/21 职场文书
机械操作工岗位职责
2014/08/08 职场文书
2015教师见习期工作总结
2014/12/12 职场文书
酒店优秀员工推荐信
2015/03/24 职场文书
小兵张嘎电影观后感
2015/06/03 职场文书
货款欠条范本
2015/07/03 职场文书
学校标语口号大全
2015/12/26 职场文书
学习新党章心得体会2016
2016/01/15 职场文书
七年级作文之关于奶奶
2019/10/29 职场文书
2019年圣诞节祝福语集锦
2019/12/25 职场文书
python实现三次密码验证的示例
2021/04/29 Python
悬疑名作《朋友游戏》动画无字ED宣传片 新角色公开
2022/04/13 日漫