• LeetCode770之基本计算器IV(相关话题:波兰表达式,多项式运算)


    题目描述

    给定一个表达式如 expression = "e + 8 - a + 5" 和一个求值映射,如 {"e": 1}(给定的形式为 evalvars = ["e"] 和 evalints = [1]),返回表示简化表达式的标记列表,例如 ["-1*a","14"]

    表达式交替使用块和符号,每个块和符号之间有一个空格。
    块要么是括号中的表达式,要么是变量,要么是非负整数。
    变量是一个由小写字母组成的字符串(不包括数字)。请注意,变量可以是多个字母,并注意变量从不具有像 "2x" 或 "-x" 这样的前导系数或一元运算符 。
    表达式按通常顺序进行求值:先是括号,然后求乘法,再计算加法和减法。

    例如,expression = "1 + 2 * 3" 的答案是 ["7"]。
    输出格式如下:

    对于系数非零的每个自变量项,我们按字典排序的顺序将自变量写在一个项中。
    例如,我们永远不会写像 “b*a*c” 这样的项,只写 “a*b*c”。
    项的次数等于被乘的自变量的数目,并计算重复项。我们先写出答案的最大次数项,用字典顺序打破关系,此时忽略词的前导系数。
    例如,"a*a*b*c" 的次数为 4。
    项的前导系数直接放在左边,用星号将它与变量分隔开(如果存在的话)。前导系数 1 仍然要打印出来。
    格式良好的一个示例答案是 ["-2*a*a*a", "3*a*a*b", "3*b*b", "

  • 相关阅读:
    【综合】输出公历年历并标注指定日期
    Java简介
    java并发编程:LinkedBlockingQueue详解
    【进制转换】
    ES6语法新特性(上)
    操作系统13章(个人笔记)
    干货丨浅谈足式机器人控制总线
    Promise, async, await实现异步编程,代码详解
    USB接口针式打印机
    PMP考前知识点口诀
  • 原文地址:https://blog.csdn.net/JiShuiSanQianLi/article/details/126731641