冲冲冲!开干
神马!神马!神马,一向让我们学习起来抓耳挠腮的数据结构课程竟然也有教程?还那么详细??真的假的?
那么好,胡广告诉你是假的,哈哈哈哈哈哈哈哈哈!笑死了!!!
为神马我要说是假的呢,兄弟们,咱们要认真的听了:没有详细的教程,只有够细的人!
这篇文章为黑马程序员的课件,由于本人已经看过了自己学习了一遍,所以推荐给大家,讲的确实不错,准备考试或者准备冲击大厂的小伙伴完全可以将胡广的这一整个专栏当做学习资料。你边学习边思考,思维进行发散,形成自己的知识体系,这个是最好滴!
咱们废话少说
视频资源:文章内容参考了黑马程序员的数据结构与算法视频,想深入了解的小伙伴们可以点击下方链接观看:
大厂必备数据结构与算法Java视频教程,java高级程序员必学的数据结构与算法
加油吧,未来的高手!!!
加油吧,未来的高手!!!
加油吧,未来的高手!!!
2.5 栈
1) 概述
计算机科学中,stack 是一种线性的数据结构,只能在其一端添加数据和移除数据。习惯来说,这一端称之为栈顶,另一端不能操作数据的称之为栈底,就如同生活中的一摞书
先提供一个栈接口
2) 链表实现
3) 数组实现
4) 应用
模拟如下方法调用
模拟代码
习题
E01. 有效的括号-Leetcode 20
一个字符串中可能出现 和 三种括号,判断该括号是否有效
有效的例子
无效的例子
思路
- 遇到左括号, 把要配对的右括号放入栈顶
- 遇到右括号, 若此时栈为空, 返回 false,否则把它与栈顶元素对比
- 若相等, 栈顶元素弹出, 继续对比java全栈基础技术栈下一组
- 若不等, 无效括号直接返回 false
- 循环结束
- 若栈为空, 表示所有括号都配上对, 返回 true
- 若栈不为空, 表示右没配对的括号, 应返回 false
答案(用到了课堂案例中的 ArrayStack 类)
E02. 后缀表达式求值-Leetcode 120
后缀表达式也称为逆波兰表达式,即运算符写在后面
- 从左向右进行计算
- 不必考虑运算符优先级,即不用包含括号
示例
题目假设
- 数字都视为整数
- 数字和运算符个数给定正确,不会有除零发生
代码
E03. 中缀表达式转后缀
E04. 双栈模拟队列-Leetcode 232
给力扣题目用的自实现栈,可以定义为静态内部类
参考解答,注意:题目已说明
- 调用 push、pop 等方法的次数最多 100
E05. 单队列模拟栈-Leetcode 225
给力扣题目用的自实现队列,可以定义为静态内部类
参考解答,注意:题目已说明
- 调用 push、pop 等方法的次数最多 100
- 每次调用 pop 和 top 都能保证栈不为空
结束啦,希望大家能有所成!!!
你好,我是胡广。 致力于为帮助兄弟们的学习方式、面试困难、入职经验少走弯路而写博客 🌹🌹🌹 坚持每天两篇高质量文章输出,加油!!!🤩
如果本篇文章帮到了你 不妨点个赞吧~ 我会很高兴的 😄 (^ ~ ^) 。想看更多 那就点个关注 吧 我会尽力带来有趣的内容 。
😎感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以 给我留言咨询,希望帮助更多的人
更多专栏:
📊 Java设计模式宝典:从入门到精通(持续更新)📝 Java基础知识:GoGoGo(持续更新)
⚽ Java面试宝典:从入门到精通(持续更新)
🌟 程序员的那些事~(乐一乐)
🤩 Redis知识、及面试(持续更新)
🚀 Kafka知识文章专栏(持续更新)
🎨 Nginx知识讲解专栏(持续更新)
📡 ZooKeeper知识(持续更新)
🎯 各类神器推荐(持续更新)
🔍 工作流Activiti7——独孤九剑(持续更新)
☀️ 数据结构与算法-全是Java干货
☔️ 未完待续。。。
🐽 未完待续。。。
⚡️ 未完待续。。。
🌗 未完待续。。。
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/24542.html