栈(stack),是1种线性存储结构,它有以下几个特点:
1. 栈中数据是依照”落后先出(LIFO, Last In First Out)”方式进出栈的。
2. 向栈中添加/删除数据时,只能从栈顶进行操作。
栈通常包括的3种操作:push、peek、pop。
push – 向栈中添加元素。
peek – 返回栈顶元素。
pop – 返回并删除栈顶元素的操作。
栈中的数据顺次是 30 –> 20 –> 10
出栈前:栈顶元素是30。此时,栈中的元素顺次是 30 –> 20 –> 10
出栈后:30出栈以后,栈顶元素变成20。此时,栈中的元素顺次是 20 –> 10
入栈前:栈顶元素是20。此时,栈中的元素顺次是 20 –> 10
入栈后:40入栈以后,栈顶元素变成40。此时,栈中的元素顺次是 40 –> 20 –> 10
Java中也提供了『栈』的实现,它就是集合框架中Stack类。