使用 PHP SplDoublyLinkedList
PHP 标准库(SPL)有一个双链表的实现,称为 SplDoublyLinkedList
。如果我们使用的是内置类,就不需要自己实现双链表。双链表的实现实际上也可以用作堆栈和队列。双链表的 PHP 实现有很多附加功能。以下是 SplDoublyLinkedList
的一些常见功能:
方法 | 描述 |
---|---|
Add |
在指定索引中添加一个新节点 |
Bottom |
从列表开头偷看一个节点 |
Count |
返回列表的大小 |
Current |
返回当前节点 |
getIteratorMode |
返回迭代模式 |
setIteratorMode |
设置迭代模式。例如,后进先出、先进先出等 |
Key |
返回当前节点索引 |
next |
移动到下一个节点 |
pop |
从列表末尾弹出一个节点 |
prev |
移动到上一个节点 |
push |
在列表末尾添加一个新节点 |
rewind |
将迭代器倒退回顶部 |
shift |
从链表开头移动一个节点 |
top |
从列表末尾偷看一个节点 |
unshift |
在列表中预置一个元素 |
valid |
检查列表中是否还有其他节点 |
现在,让我们使用 SplDoublyLinkedList
为书名应用程序编写一个小程序:
Unresolved include directive in modules/ROOT/pages/ch03/ch3-10.adoc - include::example$Chapter03/4.php[]
前面的代码将有以下输出:
Introduction to Algorithm
Introduction to Calculus
Introduction to PHP and Data structures
Introduction to Graph Theory
Programming Intelligence
Mediawiki Administrative tutorial guide