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 相关文章推荐
将数字格式的计算结果转为汉字格式
Oct 09 PHP
php学习 函数 课件
Jun 15 PHP
php 无极分类(递归)实现代码
Jan 05 PHP
PHP 魔术函数使用说明
May 14 PHP
php获取网页标题和内容函数(不包含html标签)
Feb 03 PHP
PHP使用DOMDocument类生成HTML实例(包含常见标签元素)
Jun 25 PHP
本地计算机无法启动Apache故障处理
Aug 08 PHP
php使用递归计算文件夹大小
Dec 24 PHP
PHP文件上传操作实例详解
Sep 27 PHP
thinkPHP5.0框架简单配置作用域的方法
Mar 17 PHP
php源码的使用方法讲解
Sep 26 PHP
laravel使用数据库测试注意事项
Apr 10 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
不错的PHP学习之php4与php5之间会穿梭一点点感悟
2007/05/03 PHP
php上传文件的增强函数
2010/07/21 PHP
PHP通过串口实现发送短信
2015/07/08 PHP
Yii 2.0在Grid中格式化时间方法示例
2017/06/06 PHP
Jquery从头学起第四讲 jquery入门教程
2010/08/01 Javascript
innerHTML与jquery里的html()区别介绍
2012/10/12 Javascript
原生js实现shift/ctrl/alt按键的获取
2013/04/08 Javascript
ie下$.getJSON出现问题的解决方法
2014/02/12 Javascript
Jquery性能优化详解
2014/05/15 Javascript
JavaScript来实现打开链接页面的简单实例
2016/06/02 Javascript
利用vue实现模态框组件
2016/12/19 Javascript
js实现微博发布小功能
2017/01/12 Javascript
Bootstrap页面缩小变形的快速解决办法
2017/02/03 Javascript
vue webuploader 文件上传组件开发
2017/09/23 Javascript
javascript变量提升和闭包理解
2018/03/12 Javascript
js设置鼠标悬停改变背景色实现详解
2019/06/26 Javascript
在Python的Django框架中创建和使用模版
2015/07/15 Python
Python实现统计代码行的方法分析
2017/07/12 Python
python训练数据时打乱训练数据与标签的两种方法小结
2018/11/08 Python
pygame游戏之旅 添加icon和bgm音效的方法
2018/11/21 Python
在Python中,不用while和for循环遍历列表的实例
2019/02/20 Python
pytorch中的inference使用实例
2020/02/20 Python
详解Python之Scrapy爬虫教程NBA球员数据存放到Mysql数据库
2021/01/24 Python
泰国的头号网上婴儿用品店:Motherhood.co.th
2019/04/09 全球购物
英国景点门票网站:attractiontix
2019/08/27 全球购物
介绍一下SQL中union,intersect和minus
2012/04/05 面试题
自动化工程专业个人应聘自荐信
2013/09/26 职场文书
网络教育自我鉴定
2013/11/01 职场文书
中医专业职业生涯规划书范文
2014/01/04 职场文书
实习单位评语
2014/04/26 职场文书
公共场所标语
2014/06/30 职场文书
群众路线自我剖析及整改措施
2014/11/04 职场文书
幼儿教师小班个人总结
2015/02/05 职场文书
忠犬八公的故事观后感
2015/06/05 职场文书
读《庄子》有感:美而不自知
2019/11/06 职场文书
详解pytorch创建tensor函数
2022/03/22 Python