1.上次用写了链表,今天正好拿链表实现一下栈(后进先出)
2.上次写的链表的地址:https://blog.youkuaiyun.com/qq_42528170/article/details/98738186
3.这个栈实现了一个接口,先把接口代码粘出来
4.如有不正之处,欢迎指正哦!
接口如下:
package com.imp;
public interface Stack <E>{
int getSize();
boolean isEmpty();
void push(E e);
E pop();
E peek();
}
栈实现如下:
package com.imp;
public class LinkListStack <E> implements Stack<E>{
private LinkList<E> list;
public LinkListStack(){
list = new LinkList<>();
}
@Override
public int getSize() {
// TODO Auto-generated method stub
return list.getSize();
}
@Override
public boolean isEmpty() {
// TODO Auto-generated method stub
return list.isEmpty();
}
@Override
public void push(E e) {
// TODO Auto-generated method stub
list.addFirst(e);
}
@Override
public E pop() {
// TODO Auto-generated method stub
return list.delete(0);
}
@Override
public E peek() {
// TODO Auto-generated method stub
return list.find(0);
}
public String toString() {
StringBuffer stringBuffer = new StringBuffer();
stringBuffer.append("Stack:top");
stringBuffer.append(list);
return stringBuffer.toString();
}
}