/**
* @Author Mr.wei
* @Date 2019/7/31 8:58
* @Description:使用链表实现下压栈,在这样的实现中永远都只操作表头
*/
public class Stack<T> implements Iterable<T> {
/**
* 指向链表第一个节点
*/
private Node first;
/**
* 记录链表的长度
*/
private int length;
/**
* 节点
*/
private class Node {
T item;
Node next;
}
/**
* 迭代器
*/
private class StackIterator implements Iterator<T> {
private Node iterNode = first;
@Override
public boolean hasNext() {
return iterNode != null ? true : false;
}
@Override
public T next() {
T item = iterNode.item;
iterNode = iterNode.next;
return item;
}
}
public int getLength() {
return this.length;
}
/**
* 入栈
* @param item
*/
public void push(T item)
使用链表实现LIFO栈
最新推荐文章于 2023-09-22 14:54:16 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)