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 相关文章推荐
5.PHP的其他功能
Oct 09 PHP
PHP 文件类型判断代码
Mar 13 PHP
一些php项目中比较通用的php自建函数的详解
Jun 06 PHP
php基于mcrypt的加密解密实例
Oct 27 PHP
php实现的RSS生成类实例
Apr 23 PHP
Thinkphp和Bootstrap结合打造个性的分页样式(推荐)
Aug 01 PHP
php实现博客,论坛图片防盗链的方法
Oct 15 PHP
thinkPHP5.0框架应用请求生命周期分析
Mar 25 PHP
关于PHP转换超过2038年日期出错的问题解决
Jun 28 PHP
php和asp语法上的区别总结
May 12 PHP
thinkphp框架类库扩展操作示例
Nov 26 PHP
PHP使用QR Code生成二维码实例
Jul 07 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
PHP使用内置函数生成图片的方法详解
2016/05/09 PHP
php-fpm超时时间设置request_terminate_timeout资源问题分析
2019/09/27 PHP
理解Javascript_11_constructor实现原理
2010/10/18 Javascript
js实现页面转发功能示例代码
2013/08/05 Javascript
javascript设计模式之工厂模式示例讲解
2014/03/04 Javascript
jquery实现导航固定顶部的效果仿蘑菇街
2014/10/22 Javascript
JS上传图片前实现图片预览效果的方法
2015/03/02 Javascript
javascript中对Date类型的常用操作小结
2016/05/19 Javascript
BootStrap下jQuery自动完成的样式调整
2016/05/30 Javascript
搭建简单的nodejs http服务器详解
2017/03/09 NodeJs
jQuery获取复选框选中的当前行的某个字段的值
2017/09/15 jQuery
Angular2中监听数据更新的方法
2018/08/31 Javascript
基于vue-router 多级路由redirect 重定向的问题
2018/09/03 Javascript
Vue CLI2升级至Vue CLI3的方法步骤
2019/05/20 Javascript
简单了解vue.js数组的常用操作
2019/06/17 Javascript
JavaScript实现的联动菜单特效示例
2019/07/08 Javascript
关于JS模块化的知识点分享
2019/10/16 Javascript
JavaScript Date对象功能与用法学习记录
2020/04/28 Javascript
js实现搜索提示框效果
2020/09/05 Javascript
[57:24]LGD vs VGJ.T 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python3使用urllib示例取googletranslate(谷歌翻译)
2014/01/23 Python
Python实例之wxpython中Frame使用方法
2014/06/09 Python
在Python中操作字符串之startswith()方法的使用
2015/05/20 Python
浅谈Python 对象内存占用
2016/07/15 Python
详解python之简单主机批量管理工具
2017/01/27 Python
解决python matplotlib imshow无法显示的问题
2018/05/24 Python
Django跨域请求CSRF的方法示例
2018/11/11 Python
Python同步遍历多个列表的示例
2019/02/19 Python
使用Python为中秋节绘制一块美味的月饼
2019/09/11 Python
python打印直角三角形与等腰三角形实例代码
2019/10/20 Python
CSS3的文字阴影—text-shadow的使用方法
2012/12/25 HTML / CSS
好莱坞百老汇御用王牌美妆:Koh Gen Do 江原道
2018/04/03 全球购物
澳大利亚优质的家居用品和生活方式公司:Bed Bath N’ Table
2019/04/16 全球购物
石油大学毕业生自荐信
2014/01/28 职场文书
网络管理员岗位职责
2014/03/17 职场文书
销售团队口号大全
2014/06/06 职场文书