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

组词算法的思路

php 搞代码 3年前 (2022-01-23) 11次浏览 已收录 0个评论

求一个组词算法的思路
有一个组词的需求,请大家帮忙看下,要求如下:

给定一组词,每行一个,如:

裤子
牛仔
纯棉
低腰
加肥

用上面的词组成下面的格式

裤子
牛仔
纯棉
低腰
加肥
裤子牛仔
裤子纯棉
裤子低腰
裤子加肥
裤子牛仔纯棉
裤子牛仔低腰
裤子牛仔加肥
裤子牛仔纯棉低腰
裤子牛仔纯棉加肥
裤子牛仔纯棉低腰加肥
牛仔纯棉
牛仔低腰
牛仔加肥
牛仔纯棉低腰
……..

这样依次类推一层一层的组词。

求一个这个需求的算法思路。

——解决方案——————–
很简单的一个组合问题, 每个词语可选/可不选, 递归跑一下就行了.
——解决方案——————–
排列组合,是你要的结果么?

PHP code

$arr=array('裤子','牛仔','纯棉','低腰','加肥');for($i=1,$count=count($arr);$i Array ( [0] => 裤子 [1] => 牛仔 [2] => 纯棉 [3] => 低腰 [4] => 加肥 ) [2] => Array ( [0] => 裤子牛仔 [1] => 裤子纯棉 [2] => 裤子低腰 [3] => 裤子加肥 [4] => 牛仔纯棉 [5] => 牛仔低腰 [6] => 牛仔加肥 [7] => 纯棉低腰 [8] => 纯棉加肥 [9] => 低腰加肥 ) [3] => Array ( [0] => 裤子牛仔纯棉 [1] => 裤子牛仔低腰 [2] => 裤子牛仔加肥 [3] => 裤子纯棉低腰 [4] => 裤子纯棉加肥 [5] => 裤子低腰加肥 [6] => 牛仔纯棉低腰 [7] => 牛仔纯棉加肥 [8] => 牛仔低腰加肥 [9] => 纯棉低腰加肥 ) [4] => Array ( [0] => 裤子牛仔纯棉低腰 [1] => 裤子牛仔纯棉加肥 [2] => 裤子牛仔低腰加肥 [3] => 裤子纯棉低腰加肥 [4] => 牛仔纯棉低腰加肥 ) [5] => Array ( [0] => 裤子牛仔纯棉低腰加肥 ))*/
------解决方案--------------------
组合问题,¥本文来%源[email protected]搞@^&代*@码)网5搞gaodaima代码可参考

PHP code

/**C(M,N) recursive*/function C($m,$n){ if( $n <= 1) return $m; $rs = array(); while(count($m)) { $first = array_shift( $m ); foreach(C($m,$n-1) as $v) $rs[] = $first.$v; } return $rs;}$array = array('裤子','牛仔','纯棉','低腰','加肥'); while(count($array)){ for($i = 2,$j = count($array);$i <= $j;$i++) { print_r(C($array,$i)); } array_shift($array);} 


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

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

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

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

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