笔者自述:
一直有一个声音也一直能听到身边的大佬经常说,要把算法学习搞好,一定要重视平时的算法学习,虽然每天也在学算法,但是感觉自己一直在假装努力表面功夫骗了自己,没有规划好自己的算法学习和总结,因为后半年也该找实习了,所以每日的算法题要进行恶补,勤能补拙,因此有了这一个算法日记系列;
必读: 大佬你好,感谢您的阅读,这篇文章是我的算法笔记,方便我每日回顾;
为了不耽误您的时间,我把本篇日记的考点方向和算法知识总结列出来,如果对您有需要要就进行阅读
也希望对您有帮助,和您一起通关算法!致谢
算法语言:java
题目来源:力扣–书本–初级算法,可以在力扣中搜索相关题名找到更多解法和大神方法
本文知识点:
- 使用LInkedList模拟栈
因为LInkedList内实现了栈数据结构的所有基本方法,例如addLast(),removeLast()等,同时也支持在任意位置进行插入,删除和读取操作。
addLast(E e):将元素添加到链表末尾,相当于将元素压入栈顶。
removeLast():从链表末尾删除一个元素,相当于弹出栈顶元素。
getLast():获得链表末尾的元素,相当于读取栈顶元素。 创建栈:
LinkedList<Integer> stack = new LinkedList<>();
创建栈,
stack.addLast(1);
将1入栈
int top = stack.removeLast();
将 1出栈,并赋值给 top
int top = stack.getLast();
获得栈顶元素,即 1
stack.add(1, 4);
在栈中的第二个