你好我仍然是一个学生,我有点困惑堆栈和排队? 第一个问题是,堆栈vs排队?
什么他们两者之间的主要diffrence是什么?
btw在正常排队旁边有一个循环排队那怎么样?他们如何工作?有什么不同的排队方法吗?
即时通讯使用PHP,是否有一个简单的(非常简单或易于阅读)示例代码,我可以学习(链接也可以)。
有流行,推等(堆叠和排队),有没有什么像在PHP?
非常感谢您的期待中。
你好我仍然是一个学生,我有点困惑堆栈和排队? 第一个问题是,堆栈vs排队?
什么他们两者之间的主要diffrence是什么?
btw在正常排队旁边有一个循环排队那怎么样?他们如何工作?有什么不同的排队方法吗?
即时通讯使用PHP,是否有一个简单的(非常简单或易于阅读)示例代码,我可以学习(链接也可以)。
有流行,推等(堆叠和排队),有没有什么像在PHP?
非常感谢您的期待中。
1:当用叠层插入/移除操作上的数据结构的同一端都工作(顶部)
与队列中的插入发生在一个端部(后端)和在另一端(正面)去除。
(两个图像是从相应的维基百科条目)
+1的实际提正确的SPL类型。 – Gordon 2010-10-01 08:01:12
+1。伟大!。让我们看看别人怎么说。 – 2010-10-02 17:43:20
看样子你是被操纵朝向差先入先出和后进先出队列之间。堆栈是前者,而循环队列是后者的有效实现。
A stack是LIFO(后进先出)队列。
你可以有一个circular queue - 这些都是最常见的通信接口缓冲区,因为他们只有有限的内存数据进来异步,并通过在不同的时间被CPU读取数据。
如果你很熟悉你的语言,你可以用任何语言创建队列。
php website提供了大量的文档。
A stack添加并从同一端删除项目。
甲queue添加项背面,并从所述前项(如在银行的线。)
有一个article about them both,在与代码示例详细说明了。
A circular buffer空间有限,不断添加项目以圆形方式覆盖最后的项目。
http://www.php.net/manual/en/function.array-push.php
http://php.net/manual/en/function.array-pop.php
你可以看一下示例代码中有
WEW。愚蠢的我的这个! – 2010-10-02 17:49:39
在PHP中你可以使用一个数组()来保存你的数据都栈和队列,并使用array_ *函数来处理它们。看看array functions at php.net
你有
array_unshift的 - 把一个新的元素到数组的开头。
对于栈你会使用array_push和array_pop
循环缓冲器我将实现作为一个独立的对象的队列。
我明白,你是学生,但你应该能够平凡搜索和找到这些问题的答案。 – 2010-10-01 07:30:13
查找LIFO和FIFO。 – 2010-10-01 07:33:20
@noon - 也许他了,但他已经在askied在计算器上30个问题,所以他必须相信给出答案的质量。 – kevchadders 2010-10-01 07:43:38