了解堆栈
堆栈是一种线性数据结构,遵循后进先出(LIFO)原则。这意味着堆栈只有一端,用于添加项目和从结构中删除项目。在堆栈中添加新项目称为 push
,而推送同时删除一个项目称为 pop
。由于我们只有一端可以操作,所以我们总是要在这一端推入一个项目,而当我们弹出时,这一端的最后一个项目将被弹出。堆栈中最顶端的元素,也是堆栈末端最开始的元素,称为栈顶。
如果我们看一下下面的图片,就会发现每次进行 pop
和 push
操作后,顶部都会发生变化。而且,我们是在栈顶执行操作,而不是在栈的开头或中间。我们必须小心在堆栈为空时弹出元素,以及在堆栈为满时推入元素。如果我们要推送的元素超过了栈的容量,可能会导致栈溢出。

通过前面的讨论,我们现在知道堆栈中有四种基本操作:
-
Push:在堆栈顶部添加一个项目。
-
Pop:移除堆栈顶部的项目。
-
Top:返回栈顶项目。它与
pop
不同,因为它不会 它只是为我们获取值。 -
isEmpty:检查堆栈是否为空。
现在,让我们以不同的方式使用 PHP 实现堆栈。首先,我们将尝试使用 PHP 内置的数组函数来实现堆栈。然后,我们将研究如何在不使用 PHP 内置函数的情况下,通过使用其他数据结构(如链表)来构建堆栈。