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 相关文章推荐
JAVA/JSP学习系列之二
Oct 09 PHP
使用PHP维护文件系统
Oct 09 PHP
一个ORACLE分页程序,挺实用的.
Oct 09 PHP
一个简单的php实现的MySQL数据浏览器
Mar 11 PHP
PHP 防恶意刷新实现代码
May 16 PHP
PHP中for与foreach的区别分析
Mar 09 PHP
PHP中使用Imagick操作PSD文件实例
Jan 26 PHP
PHP调用.NET的WebService 简单实例
Mar 27 PHP
php结合md5的加密解密算法实例
Sep 30 PHP
Laravel实现表单提交
May 07 PHP
php数组和链表的区别总结
Sep 20 PHP
PHP+Mysql分布式事务与解决方案深入理解
Feb 27 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原创论坛
2006/10/09 PHP
php session_start()关于Cannot send session cache limiter - headers already sent错误解决方法
2009/11/27 PHP
新手学习PHP的一些基础知识分享
2011/07/27 PHP
Yii2 GridView实现列表页直接修改数据的方法
2016/05/16 PHP
PHP 将dataurl转成图片image方法总结
2016/10/14 PHP
php面向对象基础详解【星际争霸游戏案例】
2020/01/23 PHP
关于Anemometer图形化显示MySQL慢日志的工具搭建及使用的详细介绍
2020/07/13 PHP
jQuery插件实现屏蔽单个元素使用户无法点击
2013/04/12 Javascript
AngularJS中的模块详解
2015/01/29 Javascript
ES6中如何使用Set和WeakSet
2016/03/10 Javascript
聊一聊jQuery插件uploadify使用方法
2016/08/24 Javascript
浅谈Vue的基本应用
2016/12/27 Javascript
jQuery插件HighCharts绘制2D半圆环图效果示例【附demo源码下载】
2017/03/09 Javascript
vue组件之间通信方式实例总结【8种方式】
2019/02/22 Javascript
babel7.x和webpack4.x配置vue项目的方法步骤
2019/05/12 Javascript
Vue使用axios出现options请求方法
2019/05/30 Javascript
python 动态获取当前运行的类名和函数名的方法
2014/04/15 Python
Python正则表达式教程之三:贪婪/非贪婪特性
2017/03/02 Python
Python迭代器定义与简单用法分析
2018/04/30 Python
Python类和对象的定义与实际应用案例分析
2018/12/27 Python
Python设计模式之装饰模式实例详解
2019/01/21 Python
python网络应用开发知识点浅析
2019/05/28 Python
基于 Django 的手机管理系统实现过程详解
2019/08/16 Python
css3设置box-pack和box-align让div里面的元素垂直居中
2014/09/01 HTML / CSS
如何使用amaze ui的分页样式封装一个通用的JS分页控件
2020/08/21 HTML / CSS
英国航空官网:British Airways
2016/09/11 全球购物
英国设计师珠宝网站:Joshua James Jewellery
2020/03/01 全球购物
J2ee常用的设计模式?说明工厂模式
2015/05/21 面试题
软件工程专业推荐信
2013/10/28 职场文书
咖啡馆创业计划书
2014/01/26 职场文书
关于随地扔垃圾的检讨书
2014/09/30 职场文书
个人学习党的群众路线教育实践活动心得体会
2014/11/05 职场文书
平遥古城导游词
2015/02/03 职场文书
门店店长岗位职责
2015/04/14 职场文书
校车司机安全责任书
2015/05/11 职场文书
2015年高中生国庆节演讲稿
2015/07/30 职场文书