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的FTP学习(一)[转自奥索]
Oct 09 PHP
PHP的FTP学习(三)
Oct 09 PHP
PHP下对数组进行排序的函数
Aug 08 PHP
PHP中使用Imagick操作PSD文件实例
Jan 26 PHP
php通过strpos查找字符串出现位置的方法
Mar 17 PHP
php中 $$str 中 &quot;$$&quot; 的详解
Jul 06 PHP
PHP explode()函数的几个应用和implode()函数有什么区别
Nov 05 PHP
详解WordPress中给链接添加查询字符串的方法
Dec 18 PHP
PHP生成和获取XML格式数据的方法
Mar 04 PHP
php快速排序原理与实现方法分析
May 26 PHP
关于php支持的协议与封装协议总结(推荐)
Nov 17 PHP
php关联数组与索引数组及其显示方法
Mar 12 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
高分R级DC动画剧《哈莉·奎茵》第二季正式预告首发
2020/04/09 欧美动漫
PHP多线程批量采集下载美女图片的实现代码(续)
2013/06/03 PHP
WordPress中获取所使用的模板的页面ID的简单方法
2015/12/31 PHP
效率高的Javscript字符串替换函数的benchmark
2008/08/02 Javascript
WordPress 照片lightbox效果的运用几点
2009/06/22 Javascript
基于jQuery实现的当离开页面时出现提示的实现代码
2011/06/27 Javascript
JavaScript闭包详解
2015/02/02 Javascript
你有必要知道的25个JavaScript面试题
2015/12/29 Javascript
JavaScript的Backbone.js框架环境搭建及Hellow world示例
2016/05/07 Javascript
D3.js实现文本的换行详解
2016/10/14 Javascript
angular源码学习第一篇 setupModuleLoader方法
2016/10/20 Javascript
微信小程序 时间格式化(util.formatTime(new Date))详解
2016/11/16 Javascript
详解jQuery uploadify文件上传插件的使用方法
2016/12/16 Javascript
利用VS Code开发你的第一个AngularJS 2应用程序
2017/12/15 Javascript
Vue.set()实现数据动态响应的方法
2018/02/07 Javascript
javascript防抖函数debounce详解
2019/06/11 Javascript
[01:12](回顾)DOTA2国际邀请赛,全世界DOTAer的盛宴
2014/07/01 DOTA
python调用cmd命令行制作刷博器
2014/01/13 Python
Python实现Youku视频批量下载功能
2017/03/14 Python
Python实现的朴素贝叶斯算法经典示例【测试可用】
2018/06/13 Python
Python单向链表和双向链表原理与用法实例详解
2018/08/31 Python
python把1变成01的步骤总结
2019/02/27 Python
pytorch 模型的train模式与eval模式实例
2020/02/20 Python
python爬虫scrapy框架的梨视频案例解析
2021/02/20 Python
使用HTML5和CSS3表单验证功能
2017/05/05 HTML / CSS
施华洛世奇天猫官方旗舰店:SWAROVSKI
2017/04/17 全球购物
美国按摩椅批发网站:Titan Chair
2018/12/27 全球购物
竞争上岗演讲稿
2014/01/05 职场文书
药学职务聘任书
2014/03/29 职场文书
法院四风对照检查材料思想汇报
2014/10/06 职场文书
2015年七夕爱情寄语
2015/03/24 职场文书
2015年党员创先争优公开承诺书
2015/04/27 职场文书
新兵入伍决心书
2015/09/22 职场文书
二年级数学教学反思
2016/02/16 职场文书
goland 设置project gopath的操作
2021/05/06 Golang
MySQL新手入门进阶语句汇总
2022/09/23 MySQL