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 相关文章推荐
第1次亲密接触PHP5(1)
Oct 09 PHP
php面向对象全攻略 (十六) 对象的串行化
Sep 30 PHP
通达OA公共代码 php常用检测函数
Dec 14 PHP
在项目中寻找代码的坏命名
Jul 14 PHP
探讨:如何使用PhpDocumentor生成文档
Jun 25 PHP
二进制交叉权限微型php类分享
Feb 07 PHP
php通过分类列表产生分类树数组的方法
Apr 20 PHP
使用PHP和JavaScript判断请求是否来自微信内浏览器
Aug 18 PHP
php删除数组中重复元素的方法
Dec 22 PHP
是 WordPress 让 PHP 更流行了 而不是框架
Feb 03 PHP
Centos 6.5下PHP 5.3安装ffmpeg扩展的步骤详解
Mar 02 PHP
php打开本地exe程序,js打开本地exe应用程序,并传递相关参数方法
Feb 06 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
PHP无敌近乎加密方式!
2010/07/17 PHP
PHP类与对象后期静态绑定操作实例详解
2018/12/20 PHP
JS backgroundImage控制
2009/05/19 Javascript
基于jQuery的为attr添加id title等效果的实现代码
2011/04/20 Javascript
js监听鼠标事件控制textarea输入字符串的个数
2014/09/29 Javascript
JQuery的ON()方法支持的所有事件罗列
2015/02/28 Javascript
Javascript中关于Array.filter()的妙用详解
2016/12/04 Javascript
Bootstrap和Java分页实例第一篇
2016/12/23 Javascript
js实现增加数字显示的环形进度条效果
2017/02/05 Javascript
Javascript实现信息滚动效果
2017/05/18 Javascript
vue 解决文本框被键盘遮住的问题
2019/11/06 Javascript
vue addRoutes路由动态加载操作
2020/08/04 Javascript
[01:01:36]Optic vs paiN 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
详细解析Python中的变量的数据类型
2015/05/13 Python
python 类对象和实例对象动态添加方法(分享)
2017/12/31 Python
Python字符串中添加、插入特定字符的方法
2019/09/10 Python
django中使用事务及接入支付宝支付功能
2019/09/15 Python
python 字符串常用方法汇总详解
2019/09/16 Python
Django项目创建及管理实现流程详解
2020/10/13 Python
Fossil美国官网:Fossil手表、手袋、珠宝及配件
2017/02/01 全球购物
欧洲最大的品牌水上运动服装和设备在线零售商:Wuituit Outlet
2018/05/05 全球购物
药学专业大专生的自我评价
2013/12/12 职场文书
工厂实习感言
2014/01/14 职场文书
房屋租赁意向书
2014/04/01 职场文书
冬季施工防火方案
2014/05/17 职场文书
工程索赔意向书
2014/08/30 职场文书
解除租房协议书
2014/12/03 职场文书
建筑安全员岗位职责
2015/02/15 职场文书
2015年妇联工作总结范文
2015/04/22 职场文书
圆明园观后感
2015/06/03 职场文书
公司团队口号霸气押韵
2015/12/24 职场文书
导游词之海南-南湾猴岛
2019/10/12 职场文书
Python手拉手教你爬取贝壳房源数据的实战教程
2021/05/21 Python
Python OpenCV超详细讲解调整大小与图像操作的实现
2022/04/02 Python
Java实现扫雷游戏详细代码讲解
2022/05/25 Java/Android
html中两种获取标签内的值的方法
2022/06/16 jQuery