[李景山php]算法系列|php 进行队列操作
来源:互联网 发布:最优化 经济学 编辑:程序博客网 时间:2024/05/22 11:45
<?php/** * Created by PhpStorm. * User: ziniu * Date: 2016/9/22 * Time: 16:22 */// php 队列 实现/** * 队列任务背景: * php小菜跟新来的美女同事要QQ号码,作为资深美女程序员,给了小菜一串数字2,3,7,4,1,2,9,2,4 * 并且告诉了小菜解密规则: * 首先将第一个数删除,紧接着将第2个数放到这串数的末尾,再将第3个数删除,并将第4个数放到这串数的末尾, * 再删除第5个数.....直到剩下最后一个数,将最后一个数也删除,按照刚才删除的顺序,把这些删除的数连在一起 * 就是我们美女同事的QQ号码了! */// 定义 队列 存储对象/** * Class queue */class queue{ public $data=[];//初始化队列存储数据 public $head=0;//队列开始【头】位置 【指针】 public $tail=0;//队列结束【尾】位置 【指针】}// 初始化队列$q = new queue();$q->data = array(2,1,7,4,3,2,9,2,4);$q->tail = count($q->data);// 编写处理函数function getQueue($parameter){ $str = null;// 设置初始化字符串 while($parameter->head < $parameter->tail){// 头尾进行比较 $str .= $parameter->data[$parameter->head];// 保存第一个信息 $parameter->head++;//将头部指针++, 把当前数据从头部位置剔除, if(isset($parameter->data[$parameter->head])){// 如果 当前 位置 存在数据 // 将当前数据 存到 队列 末尾 $parameter->data[$parameter->tail] = $parameter->data[$parameter->head]; $parameter->tail++;// 增加 队列 头 指针 $parameter->head++;// 增加 队列 尾 指针 } } return $str;}echo getQueue($q);
0 0
- [李景山php]算法系列|php 进行队列操作
- [李景山php]算法系列|php 进行栈操作 之 回文字符串 判定
- php算法----队列
- [李景山php]算法系列|php 实现 桶排序算法
- php文件操作系列
- [李景山php]算法系列|php 实现 冒泡排序!
- [李景山php]算法系列|php 实现快速排序
- 用php操作redis队列实例讲解
- redis 队列操作的例子(php)
- redis 队列操作的例子(php)
- PHP操作 Redis队列简单示例
- PHP 队列
- php-队列
- PHP队列
- PHP 队列
- PHP进行语义Web的CRUD操作
- php对字符串进行数组操作
- php 使用xpath进行查询XML操作
- iOS--优化tableView性能(针对滑动时出现卡的现象)
- poj 2135 Farm Tour(最小费用问题)
- springmvc和json异步提交报400或者500错误或者415错误
- replace replaceAll 函数的区别
- JAVA输入流
- [李景山php]算法系列|php 进行队列操作
- Android基础之Fragment与Activity交互详解
- Android教程 -05 Android6.0权限的管理
- ImageLoader网络加载图片
- JAVA异常-CheckedExecption
- Qt之QThreadPool和QRunnable
- 使用Proguard混淆jar包
- JavaWeb项目中加入redis缓存
- Android 调试 Web JavaScript / 微信 Web