为什么需要堆栈和队列?

时间:2019-03-24 08:56:21

标签: data-structures

好吧,这个问题已经问过了,我阅读了有关堆栈和队列的实现。但是我觉得那些事情也可以用数组或列表来实现。例如:LIFO(Last in First Out)可以很容易地实现。通过使用list在python中实现。

那为什么我们需要堆栈和队列?

1 个答案:

答案 0 :(得分:1)

StackQueue是数据结构。它们每个都有某些属性。例如,Stack是LIFO(先进先出),而Queue是FIFO(先进先出)。

在实施的情况下-如何实施这些完全取决于您。例如,如果您使用的是C ++,则可以使用数组或向量甚至链表来实现它们。 python也类似。您可以将列表调整为预期的行为(例如堆栈或队列)。在更简化的定义中-Stacks are basically array or list which has the property of LIFOQueues are basically array or list which has the property of FIFO

现在您为什么需要StackQueue? -假设您需要一个具有LIFO(或FIFO)属性的数据结构。你是做什么?您可以根据需要调整列表。但是,如果您的程序中需要多个堆栈(或队列),您该怎么办?好吧,您可以实现一个堆栈(在列表下方),该堆栈将为您提供通用模板,您可以多次重复使用该模板。