PHP SPL标准库之数据结构栈(SplStack)介绍_PHP教程

WBOY
Freigeben: 2016-07-13 09:53:37
Original
931 Leute haben es durchsucht

PHP SPL标准库之数据结构栈(SplStack)介绍

   这篇文章主要介绍了PHP SPL标准库之数据结构栈(SplStack)介绍,栈(Stack)是一种特殊的线性表,因为它只能在线性表的一端进行插入或删除元素(即进栈和出栈),需要的朋友可以参考下

  栈(Stack)是一种特殊的线性表,因为它只能在线性表的一端进行插入或删除元素(即进栈和出栈)

  SplStack就是继承双链表(SplDoublyLinkedList)实现栈。

  类摘要如下:

  简单使用如下:

  ?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

//把栈想象成一个颠倒的数组

$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

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1000109.htmlTechArticlePHP SPL标准库之数据结构栈(SplStack)介绍 这篇文章主要介绍了PHP SPL标准库之数据结构栈(SplStack)介绍,栈(Stack)是一种特殊的线性表,因为它只能...
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!