栈
它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。
向一个栈插入新元素又称作进栈、入栈或压栈,它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈,它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。
我的理解
- 栈就是一个桶形的线性表
- 准从先进后出,后进先出的原则
- 底层是数组,和栈顶
具体代码实现
public class MyStack(){
long []array;
long top;
public MyStack(){
array=new long[10];
top=-1;
}
public void push(long value){
array[++top]=value;
}
public void del(){
rerutn array[top--];
}
public boolen isEmpty(){
if(top==-1)
return ture;
else
return false;
}
public boolean isFull(){
if(top==array.length)
return true;
else
return false;
}
}