堆栈广泛用于编程语言中,以实现对函数调用的表达式求值。 它们被称为LIFO(后进先出)数据结构。 我们可以轻松地认为或堆叠成一个托盘,首先放置在最后放置的架子中。
堆栈是元素列表,您只能从列表的一端(称为顶部)访问堆栈。 由于其先进先出的性质,我们目前无法访问不在堆栈顶部的元素。 在堆栈上主要执行两个操作: push和pop 。 推入操作将元素推入堆栈的顶部,而弹出操作用于反向操作,即移除顶部元素。 还有另一个操作偷看 ,它返回栈顶的值而不将其从栈中删除。
- #12:鸟舍-朱莉娅·霍尔特(Julia Holter)(2018)
- #12,HAIM,“要告诉你的事”
- 分类频率“ Black Eye EP”预览
- 路易丝·高芬的大歌冒险继续
- 下载Lagu Hanin Dhiya Waktu Yang Salah MP3
堆栈类的实现:
在这里,我们可以使用数组来实现堆栈,如下所示。 element的值存储在名为dataStore的数组中。

push()将元素存储在堆栈的顶部位置时,需要将顶部位置增加一个。 但是在调用this.top之后放置增量操作,将其置于顶部并增加计数器以供以后使用。

pop()进行反向推入,将元素返回到堆栈的顶部位置,然后减小顶部变量。

peek()通过访问数组中top-1位置的元素来返回顶部的元素。

length()通过返回top的值来返回堆栈的长度。

clear()通过设置顶部变量0来清除堆栈。

堆栈类的实际实现:
回文 :
回文是指从前进或后退方式拼写相同的单词,阶段或数字。 例如,单词“ math”从后向拼写时是“ htam”,这是不相同的。 因此,“数学”一词不是回文。 同样,“公民”一词是回文的。
我们可以使用堆栈实现一个程序来检查回文词的有效性。 它的代码如下:


递归是广泛实现堆栈的一个领域。 递归过程实现堆栈的演示如下:

任何数字的阶乘是由从给定数字到1的数字序列的乘积定义的。例如,5!= 5 * 4 * 3 * 2 *1。在这里,我们可以实现堆栈,通过乘以n直到递归地调用数字n-1