| 
 | 
 
 
            本文实例讲述了PHP实现的简单排列组合算法应用。分享给大家供大家参考,具体如下: 
一、问题: 
给你一个40斤的西瓜,给3个人分,有多少种分法? 
二、PHP实现代码: 
$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 ''; 
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描述) 查找与二分法查找php全排列递归算法代码PHP SPL标准库之数据结构堆(SplHeap)简单使用实例php求数组全排列,元素所有组合的方法浅谈PHP链表数据结构(单链表)php求数组全排列,元素所有组合的方法总结PHP常用算法和数据结构示例(必看篇)基于PHP实现栈数据结构和括号匹配算法示例php 数据结构之链表队列PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能 
         |   
 
 
 
 |