• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

php实现求数组全排列,元素所有组合的方法

php 搞代码 4年前 (2022-01-22) 17次浏览 已收录 0个评论

下面小编就为大家带来一篇php求数组全排列,元素所有组合的方法总结。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

本文实例讲述了php求数组全排列,元素所有组合的方法总结。

分享给大家供大家参考,具体如下:

<?php$source = array('pll','我','爱','你','嘿');sort($source); //保证初始数组是有序的$last = count($source) - 1; //$source尾部元素下标$x = $last;$count = 1; //组合个数统<div>)本文来源gaodai.ma#com搞#代!码网_</div><strong>搞代gaodaima码</strong>计echo implode(',', $source), "<br>"; //输出第一种组合while (true) { $y = $x--; //相邻的两个元素 if ($source[$x] < $source[$y]) { //如果前一个元素的值小于后一个元素的值  $z = $last;  while ($source[$x] > $source[$z]) { //从尾部开始,找到第一个大于 $x 元素的值   $z--;  }  /* 交换 $x 和 $z 元素的值 */  list($source[$x], $source[$z]) = array($source[$z], $source[$x]);  /* 将 $y 之后的元素全部逆向排列 */  for ($i = $last; $i > $y; $i--, $y++) {   list($source[$i], $source[$y]) = array($source[$y], $source[$i]);  }  echo implode(',', $source), "<br>"; //输出组合  $x = $last;  $count++; } if ($x == 0) { //全部组合完毕  break; }}echo 'Total: ', $count, "\n";?>

以上就是本文的全部内容,希望对大家的学习有所帮助。

相关推荐:

php 从指定数字中获取随机组合的方法

PHP面向对象中访问者模式和组合模式详解

js合并数组合生成key:value步骤详解

以上就是php实现求数组全排列,元素所有组合的方法的详细内容,更多请关注搞代码gaodaima其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:php实现求数组全排列,元素所有组合的方法

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址