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 mkdir()定义和用法
Jan 14 PHP
php 字符过滤类,用于过滤各类用户输入的数据
May 27 PHP
PHP 递归效率分析
Nov 24 PHP
php 安全过滤函数代码
May 07 PHP
php使用parse_url和parse_str解析URL
Feb 22 PHP
用php来限制每个ip每天浏览页面数量的实现思路
Feb 24 PHP
php获取百度收录、百度热词及百度快照的方法
Apr 02 PHP
Zend Framework教程之Zend_Config_Ini用法分析
Mar 23 PHP
PHP搭建大文件切割分块上传功能示例
Jan 04 PHP
PHP在同一域名下两个不同的项目做独立登录机制详解
Sep 22 PHP
PHP延迟静态绑定的深入讲解
Apr 02 PHP
laravel5使用freetds连接sql server的方法
Dec 07 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循环获取GET和POST值的代码
2008/04/09 PHP
php数组的概述及分类与声明代码演示
2013/02/26 PHP
PHP+MySQL删除操作实例
2015/01/21 PHP
php使用socket post数据到其它web服务器的方法
2015/06/02 PHP
ThinkPHP实现附件上传功能
2017/04/27 PHP
javascript innerHTML、outerHTML、innerText、outerText的区别
2008/11/24 Javascript
jquery 最简单易用的表单验证插件
2010/02/27 Javascript
js实现五星评价功能
2017/03/08 Javascript
微信小程序 选项卡的简单实例
2017/05/24 Javascript
Node.js 利用cheerio制作简单的网页爬虫示例
2018/03/01 Javascript
关于vue中 $emit的用法详解
2018/04/12 Javascript
jQuery擦除插件eraser使用方法详解
2020/01/11 jQuery
python生成随机密码或随机字符串的方法
2015/07/03 Python
Python实现多并发访问网站功能示例
2017/06/19 Python
Python单例模式的两种实现方法
2017/08/14 Python
python判断完全平方数的方法
2018/11/13 Python
Python爬虫文件下载图文教程
2018/12/23 Python
Pycharm 设置默认头的图文教程
2019/01/17 Python
Python3内置模块random随机方法小结
2019/07/13 Python
Python爬虫 urllib2的使用方法详解
2019/09/23 Python
python处理excel绘制雷达图
2019/10/18 Python
Python实现线性判别分析(LDA)的MATLAB方式
2019/12/09 Python
TENSORFLOW变量作用域(VARIABLE SCOPE)
2020/01/10 Python
文件上传服务器-jupyter 中python解压及压缩方式
2020/04/22 Python
Keras之自定义损失(loss)函数用法说明
2020/06/10 Python
如何验证python安装成功
2020/07/06 Python
python爬虫用mongodb的理由
2020/07/28 Python
python中类与对象之间的关系详解
2020/12/16 Python
印尼值得信赖的在线交易网站:Bukalapak
2019/03/11 全球购物
机械专业个人求职自荐信格式
2013/09/21 职场文书
秸秆管理实施方案
2014/03/15 职场文书
家长学校工作方案
2014/05/07 职场文书
经典演讲稿汇总
2014/05/19 职场文书
走进毛泽东观后感
2015/06/04 职场文书
2016年过年放假安排通知
2015/08/18 职场文书
2016年大学生寒假社会实践心得体会
2015/10/09 职场文书