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 for 循环语句使用方法详细说明
May 09 PHP
php 归并排序 数组交集
May 10 PHP
php常用Stream函数集介绍
Jun 24 PHP
phpmyadmin配置文件现在需要绝密的短密码(blowfish_secret)的2种解决方法
May 07 PHP
php可生成缩略图的文件上传类实例
Dec 17 PHP
php微信开发之上传临时素材
Jun 24 PHP
thinkPHP模板引擎用法示例
Dec 08 PHP
php 7新特性之类型申明详解
Jun 06 PHP
phpstorm 正则匹配删除空行、注释行(替换注释行为空行)
Jan 21 PHP
PHP实现负载均衡下的session共用功能
Apr 17 PHP
tp5修改(实现即点即改)
Oct 18 PHP
php框架知识点的整理和补充
Mar 01 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
人族 TERRAN 概述
2020/03/14 星际争霸
PHP中使用Session配合Javascript实现文件上传进度条功能
2014/10/15 PHP
PHP集成百度Ueditor 1.4.3
2014/11/23 PHP
php计算年龄精准到年月日
2015/11/17 PHP
yii2实现根据时间搜索的方法
2016/05/25 PHP
你不知道的文件上传漏洞php代码分析
2016/09/29 PHP
PHP http请求超时问题解决方案
2020/11/13 PHP
javascript动态加载实现方法一
2012/08/22 Javascript
tangram框架响应式加载图片方法
2013/11/21 Javascript
使用JQ来编写最基本的淡入淡出效果附演示动画
2014/10/31 Javascript
Node.js实现批量去除BOM文件头
2014/12/20 Javascript
AngularJS中的模块详解
2015/01/29 Javascript
详解JavaScript中Date.UTC()方法的使用
2015/06/12 Javascript
js+css实现select的美化效果
2016/03/24 Javascript
基于javascript实现简单的抽奖系统
2020/04/15 Javascript
jQuery插件FusionWidgets实现的Cylinder图效果示例【附demo源码】
2017/03/23 jQuery
浅谈angular.copy() 深拷贝
2017/09/14 Javascript
Vue用v-for给src属性赋值的方法
2018/03/03 Javascript
基于JS实现一个随机生成验证码功能
2019/05/29 Javascript
使用Node.js实现base64和png文件相互转换的方法
2020/03/11 Javascript
jQuery带控制按钮轮播图插件
2020/07/31 jQuery
Ant Design Vue table中列超长显示...并加提示语的实例
2020/10/31 Javascript
Python解析excel文件存入sqlite数据库的方法
2016/11/15 Python
Python简单读取json文件功能示例
2017/11/30 Python
python 输入一个数n,求n个数求乘或求和的实例
2018/11/13 Python
python实现停车管理系统
2018/11/30 Python
带你认识Django
2019/01/15 Python
python等待10秒执行下一命令的方法
2020/07/19 Python
vue.js刷新当前页面的实例讲解
2020/12/29 Python
时尚设计师手表:The Watch Cabin
2018/10/06 全球购物
水污染治理专业毕业生推荐信
2013/11/14 职场文书
我的动漫时代的创业计划书范文
2014/01/27 职场文书
应届生求职信
2014/05/31 职场文书
2014年林业工作总结
2014/12/05 职场文书
发布会邀请函
2015/01/31 职场文书
陪护人员误工证明
2015/06/24 职场文书