我有一个简单的问题:栈是哪种数据结构?它是静态的还是动态的数据结构?我一直在寻找答案但找不到它,因此我得到了自己的“解释” - 我想,当你可以通过使用数组或链表来实现它时,它可以......两者都?,取决于关于实现?我的推理有道理吗?
最佳答案
根据定义,静态数据结构具有固定大小。如果您可以将堆栈的大小限制为某个预先确定的数字,则堆栈将成为静态数据结构。它的大小是其存储的大小加上指示当前位置的堆栈指针或堆栈索引的大小。
无论其实现如何,无限容量的堆栈都是动态数据结构。它可以通过链表或数组来实现,在达到其容量时重新分配,但此类堆栈的大小会随着您添加或删除数据而变化。
关于data-structures - 栈是哪种类型的数据结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34913353/