💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
双链表 (DLL) 是一个链接到两个方向的节点列表。当底层结构是 DLL 时, 迭代器的操作、对两端的访问、节点的添加或删除都具有 O (1) 的开销。因此, 它为栈和队列提供了一个合适的实现。 ![](https://img.kancloud.cn/b2/e3/b2e35a63022893287e30ddb188a0d84e_423x119.png) ``` $list = new SplDoublyLinkedList(); $list->push('a'); $list->push('b'); $list->push('c'); $list->push('d'); $list->unshift('top'); $list->shift(); print_r(array( 'pop' => $list->pop(), 'count' => $list->count(), 'isEmpty' => $list->isEmpty(), 'bottom' => $list->bottom(), 'top' => $list->top() )); #输出结果 Array ( [pop] => d [count] => 3 [isEmpty] => [bottom] => a [top] => c ) ```