php 数据结构之链表队列


Posted in PHP onOctober 17, 2017

php 链表队列

实例代码:

class Queue{ 
  
  private $last; 
  private $first; 
  private $oldfirst; 
  private static $n=0; 
   
  public function __construct(){ 
    $this->last   = null; 
    $this->first  = null; 
    $this->oldfirst = null; 
  } 
   
  public function push($item){ 
    $this->oldfirst = $this->last; 
    $this->last = new Node(); 
    $this->last->item = $item; 
    $this->last->next = null; 
    if(empty($this->first)){ 
      $this->first = $this->last; 
    }else{ 
      $this->oldfirst->next = $this->last; 
    } 
    self::$n++; 
  } 
   
  public function pop(){ 
    if(self::$n<0){ 
      return null; 
    } 
    $item = $this->first->item; 
    $this->first = $this->first->next; 
    self::$n--; 
    return $item; 
  } 
   
} 
 
class Node{ 
  public $item; 
  public $next; 
} 
 
$Queue = new Queue(); 
$Queue->push("a"); 
$Queue->push("b"); 
$Queue->push("c"); 
echo $Queue->pop().PHP_EOL; 
echo $Queue->pop().PHP_EOL; 
echo $Queue->pop().PHP_EOL; 
echo $Queue->pop().PHP_EOL;

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
WIN98下Apache1.3.14+PHP4.0.4的安装
Oct 09 PHP
PHP执行linux系统命令的常用函数使用说明
Apr 27 PHP
IIS7.X配置PHP运行环境小结
Jun 09 PHP
一致性哈希算法以及其PHP实现详细解析
Aug 24 PHP
php实现根据词频生成tag云的方法
Apr 17 PHP
微信支付开发动态链接Native支付
Jul 12 PHP
如何使用PHP给图片加水印
Oct 12 PHP
PHP 匿名函数与注意事项详细介绍
Nov 26 PHP
Thinkphp3.2实用篇之计算型验证码示例
Feb 09 PHP
php实现的pdo公共类定义与用法示例
Jul 19 PHP
php大小写转换函数(strtolower、strtoupper)用法介绍
Nov 17 PHP
phpQuery采集网页实现代码实例
Apr 02 PHP
PHP实现的贪婪算法实例
Oct 17 #PHP
PHP 7.1中AES加解密方法mcrypt_module_open()的替换方案
Oct 17 #PHP
PHP实现统计所有字符在字符串中出现次数的方法
Oct 17 #PHP
基于PHP-FPM进程池探秘
Oct 17 #PHP
PHP-X系列教程之内置函数的使用示例
Oct 16 #PHP
php封装单文件上传到数据库(路径)
Oct 15 #PHP
PHP多进程编程之僵尸进程问题的理解
Oct 15 #PHP
You might like
用DBSQL类加快开发MySQL数据库程序的速度
2006/10/09 PHP
php at(@)符号的用法简介
2009/07/11 PHP
PHP生成UTF8文件的方法
2010/05/15 PHP
php学习笔记 数组的常用函数
2011/06/13 PHP
关于php程序报date()警告的处理(date_default_timezone_set)
2013/10/22 PHP
destoon二次开发模板及调用语法汇总
2014/06/21 PHP
Laravel框架源码解析之模型Model原理与用法解析
2020/05/14 PHP
document 和 document.all 分别什么时候用
2006/06/22 Javascript
通过Unicode转义序列来加密,按你说的可以算是混淆吧
2007/05/06 Javascript
[推荐]javascript 面向对象技术基础教程
2009/03/03 Javascript
百度 popup.js 完美修正版非常的不错 脚本之家推荐
2009/04/17 Javascript
js里取容器大小、定位、距离等属性搜集整理
2013/08/19 Javascript
JSONObject使用方法详解
2015/12/17 Javascript
EasyUI的doCellTip实现鼠标放到单元格上提示单元格内容
2016/08/24 Javascript
浅谈Emergence.js 检测元素可见性的 js 插件
2017/11/18 Javascript
vue+element加入签名效果(移动端可用)
2019/06/17 Javascript
Node.JS枚举统计当前文件夹和子目录下所有代码文件行数
2019/08/23 Javascript
微信小程序webSocket的使用方法
2020/02/20 Javascript
JavaScript中使用Spread运算符的八种方法总结
2020/06/18 Javascript
在Docker上开始部署Python应用的教程
2015/04/17 Python
20招让你的Python飞起来!
2016/09/27 Python
200 行python 代码实现 2048 游戏
2018/01/12 Python
Python数据分析之双色球基于线性回归算法预测下期中奖结果示例
2018/02/08 Python
基于pytorch的lstm参数使用详解
2020/01/14 Python
兰芝美国网上商城:购买LANEIGE睡眠面膜等
2017/06/30 全球购物
巴西24小时在线药房:Droga Raia
2020/05/12 全球购物
客服端调用EJB对象的几个基本步骤
2012/01/15 面试题
会计应聘求职信范文
2013/12/17 职场文书
文化活动实施方案
2014/03/28 职场文书
网络编辑求职信
2014/04/30 职场文书
公司授权委托书格式样本
2014/10/01 职场文书
诚信考试承诺书范文
2015/04/29 职场文书
村级干部党员公开承诺事项
2015/05/04 职场文书
Django使用echarts进行可视化展示的实践
2021/06/10 Python
MySQL配置主从服务器(一主多从)
2021/08/07 MySQL
Windows Server 2012 R2服务器安装与配置的完整步骤
2022/07/15 Servers