PHP实现的链式队列结构示例


Posted in PHP onSeptember 15, 2017

本文实例讲述了PHP实现的链式队列结构。分享给大家供大家参考,具体如下:

<?php
header("Content-Type:text/html;charset=utf-8");
/**
 * 链式队列
 */
class node{
  public $nickname;
  public $next;
}
class queue
{
  public $front;//头部
  public $tail;//尾部
  public $maxSize;//容量
  public $next;//指针
  public $len=0;//长度
  public function __construct($size)
  {
    $this->init($size);
  }
  public function init($size)
  {
    $this->front = $this;
    $this->tail = $this;
    $this->maxSize = $size;
  }
  //入队操作
  public function inQ($nickname)
  {
    $node = new node();
    $node->nickname = $nickname;
    if ($this->len==$this->maxSize)
    {
      echo '队满了</br>';
    } else {
      $this->tail = $node;
      $this->tail->next = $node;
      $this->len++;
      echo $node->nickname.'入队成功</br>';
    }
  }
  //出队操作
  public function outQ()
  {
    if ($this->len==0)
    {
      echo '队空了</br>';
    } else {
      $p = $this->front->next;
      $this->front->next = $p->next;
      $this->len--;
      echo $p->nickname.'出队成功</br>';
    }
  }
  //打印队
  public function show()
  {
    for ($i=$this->len;$i>0;$i--)
    {
      $this->outQ();
    }
  }
}
echo "**********入队操作******************</br>";
$q = new queue(5);
$q->inQ('入云龙');
$q->inQ('花和尚');
$q->inQ('青面兽');
$q->inQ('行者');
$q->inQ('玉麒麟');
$q->inQ('母夜叉');
echo "**********出队队操作******************</br>";
$q->outQ();
$q->outQ();
$q->outQ();
$q->outQ();
$q->inQ('操刀鬼');
$q->inQ('截江鬼');
$q->inQ('赤发鬼');
$q->outQ();
?>

运行结果:

PHP实现的链式队列结构示例

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

PHP 相关文章推荐
php学习之数据类型之间的转换代码
May 29 PHP
PHP header()函数使用详细(301、404等错误设置)
Apr 17 PHP
使用php测试硬盘写入速度示例
Jan 27 PHP
php cookie名使用点号(句号)会被转换
Oct 23 PHP
js+php实现静态页面实时调用用户登陆状态的方法
Jan 04 PHP
PHP连接Nginx服务器并解析Nginx日志的方法
Aug 16 PHP
php批量删除操作(数据访问)
May 23 PHP
PHP简单实现合并2个数字键数组值的方法
May 30 PHP
PHP数据库操作四:mongodb用法分析
Aug 16 PHP
关于php支持的协议与封装协议总结(推荐)
Nov 17 PHP
PHP ADODB实现分页功能简单示例
May 25 PHP
PHP大文件切割上传并带进度条功能示例
Jul 01 PHP
PHP基于堆栈实现的高级计算器功能示例
Sep 15 #PHP
PHP操作MySQL中BLOB字段的方法示例【存储文本与图片】
Sep 15 #PHP
visual studio code 调试php方法(图文详解)
Sep 15 #PHP
PHP简单实现模拟登陆功能示例
Sep 15 #PHP
Thinkphp开发--集成极光推送
Sep 15 #PHP
使用PHP+MySql+Ajax+jQuery实现省市区三级联动功能示例
Sep 15 #PHP
Laravel框架用户登陆身份验证实现方法详解
Sep 14 #PHP
You might like
一个用mysql_odbc和php写的serach数据库程序
2006/10/09 PHP
Youku 视频绝对地址获取的方法详解
2013/06/26 PHP
详细解读PHP的Yii框架中登陆功能的实现
2015/08/21 PHP
php实现分页显示
2015/11/03 PHP
php实现PDO中捕获SQL语句错误的方法
2017/02/16 PHP
DOM精简教程
2006/10/03 Javascript
javascript 获取图片尺寸及放大图片
2013/09/04 Javascript
js模拟hashtable的简单实例
2014/03/06 Javascript
中文输入法不触发onkeyup事件的解决办法
2014/07/09 Javascript
jquery datatable后台封装数据示例代码
2014/08/07 Javascript
jQuery实现仿路边灯箱广告图片轮播效果
2015/04/15 Javascript
NodeJS实现阿里大鱼短信通知发送
2016/01/17 NodeJs
jquery模拟多级复选框效果的简单实例
2016/06/08 Javascript
JS实现iframe自适应高度的方法(兼容IE与FireFox)
2016/06/24 Javascript
javascript作用域链与执行环境详解
2017/03/25 Javascript
JavaScript函数定义方法实例详解
2019/03/05 Javascript
关于vue.js中实现方法内某些代码延时执行
2019/11/14 Javascript
JavaScript监听键盘事件代码实现
2020/06/03 Javascript
Python中的字符串类型基本知识学习教程
2016/02/04 Python
[原创]教女朋友学Python3(二)简单的输入输出及内置函数查看
2017/11/30 Python
对python抓取需要登录网站数据的方法详解
2018/05/21 Python
在python image 中安装中文字体的实现方法
2019/08/22 Python
Keras构建神经网络踩坑(解决model.predict预测值全为0.0的问题)
2020/07/07 Python
PurCotton全棉时代官网:100%天然棉花生产的生活护理用品
2016/11/18 全球购物
REISS英国官网:伦敦High Street最受欢迎品牌
2016/12/21 全球购物
机电一体化专业推荐信
2013/12/03 职场文书
孝敬父母的演讲稿
2014/05/14 职场文书
企业诚信承诺书
2014/05/23 职场文书
经营目标管理责任书
2014/07/25 职场文书
学习张林森心得体会
2014/09/10 职场文书
关于空气污染危害的感想
2015/08/11 职场文书
新员工实习期个人工作总结
2015/10/15 职场文书
交通安全宣传标语(100条)
2019/08/22 职场文书
Java集成swagger文档组件
2021/06/28 Java/Android
python 字典和列表嵌套用法详解
2021/06/29 Python
MySQL分区路径子分区再分区
2022/04/13 MySQL