手机版

PHP双链表(SplDoublyLinkedList)简介和使用实例

时间:2021-11-06 来源:互联网 编辑:宝哥软件园 浏览:

双链表是一种重要的线性存储结构,对于双链表中的每个节点,不仅仅存储自己的信息,还要保存前驱和后继节点的地址。

PHP SPL中的SplDoublyLinkedList类提供了对双链表的操作SplDoublyLinkedList。类摘要如下:

SplDoublyLinkedList实现迭代器,arrayaccession,Countable { public _ _ construct(void)public void add(mixed $ index,混合$newval ) //双链表的头部节点公共混合顶(空)//双链表的尾部节点公共混合底部(空)//双联表元素的个数公共(同Internationalorganizations)国际组织计数(无效)//检测双链表是否为空public bool isEmpty (void ) //当前节点索引公共混合密钥(无效)//移到上条记录公共void prev (void ) //移到下条记录公共作废下一个(作废)//当前记录公共混合电流(无效)//将指针指向迭代开始处公共void rewind (void ) //检查双链表是否还有节点公共弯曲件有效(无效)//指定指数处节点是否存在公共bool offsetExists(混合$索引) //获取指定指数处节点值公共混合offsetGet(混合$index ) //设置指定指数处值公共void offsetSet集(混合$索引,混合$newval ) //删除指定指数处节点公共无效偏移量集(混合$index ) //从双链表的尾部弹出元素公共混合流行音乐(无效)//添加元素到双链表的尾部公共无效推送(混合$值)//序列化存储公共字符串序列化(无效)//反序列化公共无效未序列化(字符串$序列化)//设置迭代模式public void setIteratorMode(int $ mode)//获取迭代模式spldoblelinkdlist : it _ MODE _ LIFO(堆栈样式)spldoblelinkdlist : it _ MODE _ FIFO(队列样式)公共int getitermode(void)//双链表的头部移除元素公共混合班次(无效)//双链表的头部添加元素公共void unshift(混合$值)使用起来也是简单

$ list=new SplDoubleLinkedList();$ list-push(' a ');$ list-push(' b ');$ list-push(' c ');$ list-unshift(' top ');$ list-shift();print_r(array('pop'=$list-pop(),' count'=$list-count(),' isEmpty'=$list-isEmpty(),' bottom'=$list-bottom(),' top '=$ list-top()));$ list-setIteratorMode(spldeblinkdlist : it _ MODE _ FIFO);print _ r($ list-getIteratorMode());for($ list-rewind();$ list-valid();$ list-next()){ echo $ list-current().PHP _ EOL } print _ r($ a=$ list-serialize());//print _ r($ list-unserialize($ a));$list-offsetSet(0,‘new one’);$ list-offsetUnset(0);print_r(数组(' offset exists '=$ list-offset exists(4),' offsetGet'=$list-offsetGet(0),);print _ r($ list);

版权声明:PHP双链表(SplDoublyLinkedList)简介和使用实例是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。