美文网首页
栈的应用

栈的应用

作者: 雷一凡 | 来源:发表于2017-02-28 23:35 被阅读0次

1.括号匹配

  算法思路:从第一个字符扫描遇到普通字符忽略,遇到左符号压入栈中,继续扫描,遇到右符号时从栈中弹出进行匹配,匹配成功,消除栈中那个左符号的元素。继续扫描ing

成功:空栈

失败:非空栈

2.中缀表达式(人类的思考)和后缀表达式(计算机的计算)

  中缀转化后缀的思想:

遍历中缀表达式中的数字和字符:

a.如果为数字 直接输出

b.若为符号  1. 左括号进栈 

                     2.运算符 与栈顶进行比较若栈顶符号优先级低则进展(默认左括号最低)若栈顶符号不                           低,则弹出

                    3 右括号:将栈顶的元素弹出知道匹配左括号

如8+(3-1)*5  ------》 8 3 1 - 5 *

如何基于后缀表达式进行计算

831-5*+

对于数字直接进栈

对于符号

从栈中弹出右操作数

从栈中弹出左操作数

将计算结果压栈

知道栈中剩下的结果为最后的计算数值

相关文章

  • 1)栈是什么?2)栈的特点?3)栈的基本操作有哪些?4)栈已被应用的经典场景有哪些?栈的应用场景? 一、栈是什么?...

  • 栈与栈的应用

    一、阅读源码,得知,stack类继承自Vector,而Vector相当于线程安全的arraylist(相反的arr...

  • 栈的应用

    动态数组的子集 栈的应用undo.png leetcode括号匹配:

  • 栈的应用

    中缀表达式转换为后缀表达式 后缀表达式 做数学运算时,经常使用的是中缀表达式,即“操作数 运算符 操作数”。在计算...

  • 栈的应用

    1.括号匹配 算法思路:从第一个字符扫描遇到普通字符忽略,遇到左符号压入栈中,继续扫描,遇到右符号时从栈中弹出进...

  • 栈的应用

    回顾数组 特点:数组是一种常见线性结构,用于储存数据,并且可以在数组任意位置插入和删除元素 认识栈结构(Stack...

  • 栈的应用

    1051 Pop Sequence

  • 栈的应用

    栈的应用 栈是一种先进后出的数据结构,这个我相信大家很好理解。那下面我就通过两个栈的实际应用来帮助大家更好的理解栈...

  • 栈的应用

    进制转换 关于进制转化问题,可以利用栈的先进后出选择很方便的实现,以二进制为例,将一个十进制数8转化为二进制的,实...

  • 栈的应用

网友评论

      本文标题:栈的应用

      本文链接:https://www.haomeiwen.com/subject/axifgttx.html