美文网首页
栈的应用

栈的应用

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

    1.括号匹配

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

    成功:空栈

    失败:非空栈

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

      中缀转化后缀的思想:

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

    a.如果为数字 直接输出

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

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

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

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

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

    831-5*+

    对于数字直接进栈

    对于符号

    从栈中弹出右操作数

    从栈中弹出左操作数

    将计算结果压栈

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

    相关文章

      网友评论

          本文标题:栈的应用

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