Java推荐使用Deque来代替 stack。
stack继承vector,它有很多vector的功能,比如可以插入数值到任意位置,但是其实栈只能插入或删除栈顶数据。因此继承了Queue的Deque即双端队列其实更合适。
Deque是一个双端队列接口,继承自Queue接口,Deque的实现类是LinkedList、ArrayDeque、LinkedBlockingDeque,其中LinkedList是最常用的。实现方式如下:
Deque<TreeNode> stack = new LinkedList<TreeNode>();
双端队列Deque与Stack类对应的函数:
双端队列Deque与Queue类对应的函数:
参考:
https://www.cnblogs.com/ltc0504/p/15633149.html