PHP SPL标准库之数据结构栈(SplStack)介绍
更新时间:2015年05月12日 09:45:05 投稿:junjie
这篇文章主要介绍了PHP SPL标准库之数据结构栈(SplStack)介绍,栈(Stack)是一种特殊的线性表,因为它只能在线性表的一端进行插入或删除元素(即进栈和出栈),需要的朋友可以参考下
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud)
(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun)
栈(Stack)是一种特殊的线性表,因为它只能在线性表的一端进行插入或删除元素(即进栈和出栈)
SplStack就是继承双链表(SplDoublyLinkedList)实现栈。
类摘要如下:
简单使用如下:
//把栈想象成一个颠倒的数组 $stack = new SplStack(); /** * 可见栈和双链表的区别就是IteratorMode改变了而已,栈的IteratorMode只能为: * (1)SplDoublyLinkedList::IT_MODE_LIFO | SplDoublyLinkedList::IT_MODE_KEEP (默认值,迭代后数据保存) * (2)SplDoublyLinkedList::IT_MODE_LIFO | SplDoublyLinkedList::IT_MODE_DELETE (迭代后数据删除) */ $stack->setIteratorMode(SplDoublyLinkedList::IT_MODE_LIFO | SplDoublyLinkedList::IT_MODE_DELETE); $stack->push('a'); $stack->push('b'); $stack->push('c'); $stack->pop(); //出栈 $stack->offsetSet(0, 'first');//index 为0的是最后一个元素 foreach($stack as $item) { echo $item . PHP_EOL; // first a } print_R($stack); //测试IteratorMode
相关文章
如何使用jQuery+PHP+MySQL来实现一个在线测试项目
本文将结合实例给大家介绍如何使用jQuery+PHP+MySQL来实现在线测试题,包括动态读取题目,答题完毕后台评分,并返回答题结果。2015-04-04Laravel5.2使用Captcha生成验证码实现登录(session巨坑)
这篇文章主要介绍了Laravel5.2使用Captcha生成验证码(session巨坑),需要的朋友可以参考下2018-01-01php array_udiff_assoc 计算两个数组的差集实例
这篇文章主要介绍了php array_udiff_assoc 计算两个数组的差集实例的相关资料,需要的朋友可以参考下2016-11-11
最新评论