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&amp;MYSQL留言板源码
Jul 19 PHP
PHP使用DES进行加密与解密的方法详解
Jun 06 PHP
php生成EAN_13标准条形码实例
Nov 13 PHP
PHP抽奖算法程序代码分享
Oct 08 PHP
PHP扩展Memcache分布式部署方案
Dec 06 PHP
PHP定时执行任务的3种方法详解
Dec 21 PHP
php制作的简单验证码识别代码
Jan 26 PHP
PHP中SERIALIZE和JSON的序列化与反序列化操作区别分析
Oct 11 PHP
PHP 7.1新特性的汇总介绍
Dec 16 PHP
Laravel多域名下字段验证的方法
Apr 04 PHP
七种PHP开发环境搭建工具
Jun 28 PHP
利用ajax+php实现商品价格计算
Mar 31 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插件Xajax使用方法详解
Aug 31 #PHP
php数据库的增删改查 php与javascript之间的交互
Aug 31 #PHP
You might like
ThinkPHP 404页面的设置方法
2015/01/14 PHP
PHP贪婪算法解决0-1背包问题实例分析
2015/03/23 PHP
php转换颜色为其反色的方法
2015/04/27 PHP
php实现paypal 授权登录
2015/05/28 PHP
php7安装yar扩展的方法详解
2017/08/03 PHP
js 面向对象的技术创建高级 Web 应用程序
2010/02/25 Javascript
IE中jquery.form中ajax提交没反应解决方法分享
2012/09/11 Javascript
商城常用滚动的焦点图效果代码简单实用
2013/03/28 Javascript
jquery实现的横向二级导航效果代码
2015/08/26 Javascript
JavaScript实现图片瀑布流和底部刷新
2017/01/02 Javascript
JS简单判断滚动条的滚动方向实现方法
2017/04/28 Javascript
利用jQuery+localStorage实现一个简易的计时器示例代码
2017/12/25 jQuery
Node.JS循环删除非空文件夹及子目录下的所有文件
2018/03/12 Javascript
vue router动态路由下让每个子路由都是独立组件的解决方案
2018/04/24 Javascript
Node.js引入UIBootstrap的方法示例
2018/05/11 Javascript
node中IO以及定时器优先级详解
2019/05/10 Javascript
vue quill editor 使用富文本添加上传音频功能
2020/01/14 Javascript
python支持断点续传的多线程下载示例
2014/01/16 Python
Python和perl实现批量对目录下电子书文件重命名的代码分享
2014/11/21 Python
Python3自动签到 定时任务 判断节假日的实例
2018/11/13 Python
Python遍历文件夹 处理json文件的方法
2019/01/22 Python
python 使用matplotlib 实现从文件中读取x,y坐标的可视化方法
2019/07/04 Python
Django rest framework jwt的使用方法详解
2019/08/08 Python
win10环境下配置vscode python开发环境的教程详解
2019/10/16 Python
浅谈python之自动化运维(Paramiko)
2020/01/31 Python
pytorch 模型的train模式与eval模式实例
2020/02/20 Python
python使用列表的最佳方案
2020/08/12 Python
BabyBjörn婴儿背带法国官网:BabyBjorn法国
2018/06/16 全球购物
手术室护士长竞聘书
2014/03/31 职场文书
婚前保证书
2014/04/29 职场文书
文案策划专业自荐信
2014/07/07 职场文书
信仰心得体会
2014/09/05 职场文书
简单的个人租房协议书范本
2014/11/26 职场文书
任长霞观后感
2015/06/16 职场文书
2016秋季校长开学典礼致辞
2015/11/26 职场文书
导游词之河北邯郸
2019/09/12 职场文书