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定时自动生成静态HTML的实现代码
Jun 20 PHP
php实现可以设置中奖概率的抽奖程序代码分享
Jan 19 PHP
PHP中常用的输出函数总结
Sep 22 PHP
php在linux下检测mysql同步状态的方法
Jan 15 PHP
php通过array_merge()函数合并关联和非关联数组的方法
Mar 18 PHP
php经典算法集锦
Nov 14 PHP
php微信开发之批量生成带参数的二维码
Jun 26 PHP
laravel中的错误与日志用法详解
Jul 26 PHP
PHP中的多种加密技术及代码示例解析
Oct 20 PHP
ThinkPHP整合datatables实现服务端分页的示例代码
Feb 10 PHP
因str_replace导致的注入问题总结
Aug 08 PHP
PHP实现长轮询消息实时推送功能代码实例讲解
Feb 26 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二分法在IP地址查询中的应用
2008/08/12 PHP
PHP连接局域网MYSQL数据库的简单实例
2013/08/26 PHP
php在linux下检测mysql同步状态的方法
2015/01/15 PHP
简单的自定义php模板引擎
2016/08/26 PHP
PHP控制反转(IOC)和依赖注入(DI)
2017/03/13 PHP
PHP钩子与简单分发方式实例分析
2017/09/04 PHP
PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能
2017/11/10 PHP
js导航菜单(自写)简单大方
2013/03/28 Javascript
jquery插件推荐浏览器嗅探userAgent
2014/11/09 Javascript
深入分析Javascript跨域问题
2015/04/17 Javascript
jQuery实现右侧显示可向左滑动展示的深色QQ客服效果代码
2015/10/23 Javascript
微信公众号开发 自定义菜单跳转页面并获取用户信息实例详解
2016/12/08 Javascript
Bootstarp 基础教程之表单部分实例代码
2017/02/03 Javascript
JavaScript与JQUERY获取元素的宽、高和位置
2017/02/26 Javascript
BootStrap selectpicker后台动态绑定数据的方法
2017/07/28 Javascript
javascript input输入框模糊提示功能的实现
2017/09/25 Javascript
vuex实现购物车功能
2020/06/28 Javascript
vue调用微信JSDK 扫一扫,相册等需要注意的事项
2021/01/03 Vue.js
利用Python自动监控网站并发送邮件告警的方法
2016/08/24 Python
利用python实现简单的循环购物车功能示例代码
2017/07/05 Python
详解TensorFlow查看ckpt中变量的几种方法
2018/06/19 Python
python 读取目录下csv文件并绘制曲线v111的方法
2018/07/06 Python
Sanic框架应用部署方法详解
2018/07/18 Python
Ranorex通过Python将报告发送到邮箱的方法
2020/01/12 Python
简单了解python列表和元组的区别
2020/05/14 Python
阿迪达斯加拿大官网:Adidas加拿大
2016/08/25 全球购物
工程项目经理岗位职责
2013/12/15 职场文书
电气工程及自动化专业自荐书范文
2013/12/18 职场文书
素质拓展感言
2014/01/29 职场文书
区政府领导班子个人对照检查材料
2014/09/25 职场文书
老员工辞职信范文
2015/05/12 职场文书
单位更名证明
2015/06/18 职场文书
美容院管理规章制度
2015/08/05 职场文书
趣味运动会标语口号
2015/12/26 职场文书
2016大学生入党积极分子心得体会
2016/01/06 职场文书
Nginx实现负载均衡的项目实践
2022/03/18 Servers