PHP实现的简单组词算法示例


Posted in PHP onApril 10, 2018

本文实例讲述了PHP实现的简单组词算法。分享给大家供大家参考,具体如下:

<?php
//组词算法
function diyWords($arr,$m){
  $result = array();
  if ($m ==1){//只剩一个词时直接返回
    return $arr;
  }
  if ($m == count($arr)){
    $result[] = implode('' , $arr);
    return $result;
  }
  $temp_firstelement = $arr[0];
  unset($arr[0]);
  $arr = array_values($arr);
  $temp_list1 = diyWords($arr, ($m-1));
  foreach ($temp_list1 as $s){
    $s = $temp_firstelement.$s;
    $result[] = $s;
  }
  $temp_list2 = diyWords($arr, $m);
  foreach ($temp_list2 as $s){
    $result[] = $s;
  }
  return $result;
}
//组词算法
$arr=array('裤子','牛仔','低腰','加肥');
$count=count($arr);
for($i=1;$i<=$count;$i++){
  $temp[$i]=diyWords($arr,$i);
}
echo '<pre/>';print_r($temp);

运行结果:

Array
(
    [1] => Array
        (
            [0] => 裤子
            [1] => 牛仔
            [2] => 低腰
            [3] => 加肥
        )
    [2] => Array
        (
            [0] => 裤子牛仔
            [1] => 裤子低腰
            [2] => 裤子加肥
            [3] => 牛仔低腰
            [4] => 牛仔加肥
            [5] => 低腰加肥
        )
    [3] => Array
        (
            [0] => 裤子牛仔低腰
            [1] => 裤子牛仔加肥
            [2] => 裤子低腰加肥
            [3] => 牛仔低腰加肥
        )
    [4] => Array
        (
            [0] => 裤子牛仔低腰加肥
        )
)

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php curl 伪造IP来源的实例代码
Nov 01 PHP
深入php 正则表达式的学习探讨
Jun 06 PHP
解析PHP获取当前网址及域名的实现代码
Jun 23 PHP
PHP上传文件时文件过大$_FILES为空的解决方法
Nov 26 PHP
浅析ThinkPHP中的pathinfo模式和URL重写
Jan 06 PHP
php实现的发送带附件邮件类实例
Sep 22 PHP
浅谈COOKIE和SESSION区别
Jul 19 PHP
zend framework中使用memcache的方法
Mar 04 PHP
分析PHP中单双引号的误区和双引号小隐患
Jul 19 PHP
php导出csv文件,可导出前导0实例代码
Nov 16 PHP
PHP实现的用户注册表单验证功能简单示例
Feb 25 PHP
ThinkPHP框架整合微信支付之JSAPI模式图文详解
Apr 09 PHP
PHP实现的大文件切割与合并功能示例
Apr 10 #PHP
PHP实现分布式memcache设置web集群session同步的方法
Apr 10 #PHP
PHP实现Redis单据锁以及防止并发重复写入
Apr 10 #PHP
PHP使用zlib扩展实现GZIP压缩输出的方法详解
Apr 09 #PHP
基于CI(CodeIgniter)框架实现购物车功能的方法
Apr 09 #PHP
PHP缓存工具XCache安装与使用方法详解
Apr 09 #PHP
PHP+Session防止表单重复提交的解决方法
Apr 09 #PHP
You might like
PHP脚本的10个技巧(4)
2006/10/09 PHP
PHP XML error parsing SOAP payload on line 1
2010/06/17 PHP
PHP三元运算的2种写法代码实例
2014/05/12 PHP
thinkPHP3.1验证码的简单实现方法
2016/04/22 PHP
PHP中ltrim()函数的用法与实例讲解
2019/03/28 PHP
使用jQuery和PHP实现类似360功能开关效果
2014/02/12 Javascript
JavaScript检测弹出窗口是否已经关闭的方法
2015/03/24 Javascript
js鼠标点击图片切换效果实现代码
2015/11/19 Javascript
详解Angular开发中的登陆与身份验证
2016/07/27 Javascript
AngularJs  Creating Services详解及示例代码
2016/09/02 Javascript
js eval函数使用,js对象和字符串互转实例
2017/03/06 Javascript
React注册倒计时功能的实现
2018/09/06 Javascript
使用js在layui中实现上传图片压缩
2019/06/18 Javascript
javascript实现简易的计算器
2020/01/17 Javascript
jquery实现聊天机器人
2020/02/08 jQuery
Python函数装饰器实现方法详解
2018/12/22 Python
python实现微信每日一句自动发送给喜欢的人
2019/04/29 Python
Python统计学一数据的概括性度量详解
2020/03/03 Python
python输出数学符号实例
2020/05/11 Python
让你相见恨晚的十个Python骚操作
2020/11/18 Python
Python环境搭建过程从安装到Hello World
2021/02/05 Python
PyQt5通过信号实现MVC的示例
2021/02/06 Python
在canvas上实现元素图片镜像翻转动画效果的方法
2018/03/20 HTML / CSS
阿迪达斯越南官网:adidas越南
2020/07/19 全球购物
2014年党员公开承诺书范文
2014/03/28 职场文书
服务理念口号
2014/06/11 职场文书
2014年初一班主任工作总结
2014/11/08 职场文书
2014年财政所工作总结
2014/11/22 职场文书
2015年扫黄打非工作总结
2015/05/13 职场文书
红白喜事主持词
2015/07/06 职场文书
莫言诺贝尔获奖感言(全文)
2015/07/31 职场文书
同事离别感言
2015/08/04 职场文书
导游词之河北白洋淀
2020/01/15 职场文书
游戏开发中如何使用CocosCreator进行音效处理
2021/04/14 Javascript
MySQL sql_mode的使用详解
2021/05/08 MySQL
电脑无法安装Windows 11怎么办?无法安装Win11的解决方法
2021/11/21 数码科技