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公用函数列表[正则]
Feb 22 PHP
PHP 加密与解密的斗争
Apr 17 PHP
PHP 数据结构 算法描述 冒泡排序 bubble sort
Jul 10 PHP
关于shopex同步ucenter的redirect问题,导致script不运行
Apr 10 PHP
PHP URL路由类实例
Nov 12 PHP
php中ob_flush函数和flush函数用法分析
Mar 18 PHP
php如何连接sql server
Oct 16 PHP
php生成动态验证码gif图片
Oct 19 PHP
thinkPHP中验证码的简单使用方法
Dec 26 PHP
php mysql like 实现多关键词搜索的方法
Oct 29 PHP
php实现socket推送技术的示例
Dec 20 PHP
Codeigniter里的无刷新上传的实现代码
Apr 14 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
一个odbc连mssql分页的类
2006/10/09 PHP
php验证邮箱和ip地址最简单方法汇总
2015/10/30 PHP
php简单复制文件的方法
2016/05/09 PHP
Yii2实现同时搜索多个字段的方法
2016/08/10 PHP
PHP命令Command模式用法实例分析
2018/08/08 PHP
基于jQuery的一个扩展form序列化到json对象
2010/12/09 Javascript
javascript使用百度地图api和html5特性获取浏览器位置
2014/01/10 Javascript
jquery实现带二级菜单的导航示例
2014/04/28 Javascript
JavaScript学习笔记之检测客户端类型是(引擎、浏览器、平台、操作系统、移动设备)
2015/12/03 Javascript
javascript中的面向对象
2017/03/30 Javascript
解决canvas画布使用fillRect()时高度出现双倍效果的问题
2017/08/03 Javascript
JS实现访问DOM对象指定节点的方法示例
2018/04/04 Javascript
vue2.0使用v-for循环制作多级嵌套菜单栏
2018/06/25 Javascript
Vue实现的父组件向子组件传值功能示例
2019/01/19 Javascript
Flutter 超实用简单菜单弹出框 PopupMenuButton功能
2019/08/06 Javascript
js根据后缀判断文件文件类型的代码
2020/05/09 Javascript
Vue中nprogress页面加载进度条的方法实现
2020/11/13 Javascript
Python实现的tab文件操作类分享
2014/11/20 Python
Python中文件的读取和写入操作
2018/04/27 Python
python 快速把超大txt文件转存为csv的实例
2018/10/26 Python
python处理multipart/form-data的请求方法
2018/12/26 Python
使用python 将图片复制到系统剪贴中
2019/12/13 Python
Python pandas如何向excel添加数据
2020/05/22 Python
Django解决frame拒绝问题的方法
2020/12/18 Python
python多线程爬取西刺代理的示例代码
2021/01/30 Python
CSS实现半透明边框与多重边框的场景分析
2019/11/13 HTML / CSS
TripAdvisor斯洛伐克:阅读评论、比较价格和酒店预订
2018/04/25 全球购物
下面代码从性能上考虑,有什么问题
2015/04/03 面试题
工程造价管理专业大专生求职信
2013/10/06 职场文书
交通安全演讲稿
2014/01/07 职场文书
对教师的评语
2014/04/28 职场文书
领导班子群众路线与四风问题对照检查材料思想汇报
2014/10/11 职场文书
幼儿园托班教育随笔
2015/08/14 职场文书
会议主持词通用版
2019/04/02 职场文书
JavaScript数组 几个常用方法总结
2021/11/11 Javascript
基于Android10渲染Surface的创建过程
2022/08/14 Java/Android