摘要:什么是链式队列队列是一种先进先出的存储结构是一种特殊的线性表,于它只允许在表的前端进行删除操作,而在表的后端进行插入操作。
什么是链式队列
队列是一种“先进先出”的存储结构,是一种特殊的线性表,于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作。
通常队列可以分为顺序队列和链式队列两种实现,
顺序队列顾名思义就是采用顺序存储,如以数组方式来实现,
链式队列采用链式存储,如以上篇说到的单向链表来实现,
链式队列是以链式数据结构实现的队列
队列有两个基本的操作,入队列和出队列
代码实现
链式队列实现方式多种多样,可以以单链表,双向链表,循环链表等各种方式来实现,这里以上篇提到的单链表的方式来实现。
isEmpty()) { throw new Exception("队列为空"); } $node = parent::searchNodeByIndex(1); parent::deleteNodeByIndex(1); return $node->data; } /** * 队列是否为空 * @return bool */ public function isEmpty() { return $this->header->next == null; } }
示例
$queue = new QueueImplementedBySingleLinkList(); $queue->enQueue("1"); $queue->enQueue("2"); $queue->enQueue("3"); $queue->enQueue("4"); var_dump($queue); echo "-----------", PHP_EOL; $queue->deQueue(); $queue->deQueue(); var_dump($queue);
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/29872.html
摘要:数据结构数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。不同类型的数据结构编程世界中存在许多不同类型的数据结构。可以将集合数据结构进行排序,并将其称为有序集合。 数据结构基本概念 数据元素(Data Element) 数据元素是数据的基本单位,在计算机程序中通常将其作为一个整体进行考虑和处理。一个数据元素可由若干个数据项组成。 数据项 (Data Item) 数据项是数据结...
摘要:中文文档简单说,对象就是的回调函数解决方案。为了让回调函数的名字统一,便于在中使用。普通操作的回调函数接口对象的最大优点,就是它把这一套回调函数接口,从操作扩展到了所有操作。指定操作成功时的回调函数。 参考链接 jQuery API中文文档 jQuery.Deferred jQuery.when jQuery的deferred对象详解 jQuery deferred 对象的 prom...
摘要:栈底是固定的,而栈顶浮动的如果栈中元素个数为零则被称为空栈。入栈将数据保存到栈顶。链栈链栈是指栈的链式存储结构,是没有附加头节点的运算受限的单链表,栈顶指针是链表的头指针。 一、喜欢单挑线性表 1.线性表的特性 线性表是一个线性结构,它是一个含有n≥0个节点的有限序列。在节点中,有且仅有一个开始节点没有前驱并有一个后继节点,有且仅有一个终端节点没有后继并有一个前驱节点。其他的节点都有且...
阅读 1966·2021-09-29 09:35
阅读 1786·2019-08-30 14:15
阅读 2942·2019-08-30 10:56
阅读 920·2019-08-29 16:59
阅读 529·2019-08-29 14:04
阅读 1267·2019-08-29 12:30
阅读 977·2019-08-28 18:19
阅读 440·2019-08-26 11:51