最近在看算法,看到了栈,就想着有一次面试时遇到了笔试题是,自己实现一个栈结构,当时没有写出来,现在看到,就想着用数组实现一个简单的顺序栈。直接上代码:
public class ArrayStack {
private String [] items; //数组
private int count; //栈中元素个数
private int n; //栈的大小
//初始化数组
public ArrayStack(int n) {
this.items = new String[n];
this.n = n;
this.count = 0;
}
//入栈操作
public boolean Push (String item) {
if (count == n) { //如果为n则栈满了,入栈失败
return false;
}
items[count] = item;//将item放到下标为count的位置
count++; //并且count加一
return true;
}
//出栈操作
public String Pop () {
if (count == 0) { //如果为零,则栈中无数据
return null;
}
String temp = items[count-1]; //返回数组中下标为count—1的值
count--; //并且count减一
return temp;
}
}
网友评论