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