栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。
进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。
压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。 出栈:栈的删除操作叫做出栈。出数据在栈顶
使用顺序表的方式实现
代码语言:javascript复制//栈操作
public class MyStack {
//管理一些int元素即可,不考虑扩容问题
private int[] array = new int[100];
private int size = 0; //栈中出现多少个有效元素
//入栈
public void push(int x){
array[size] = x;
size ;
}
//取栈顶元素
public int peek(){
return array[size-1];
}
//出栈
public int pop(){
int ret = array[size-1];
size--;
return ret;
}
}
具体方法实现
方法 | 含义 |
---|---|
push() | 压栈 |
pop() | 出栈 |
peek() | 取栈顶元素 |
empty() | 判断栈是否为空 |