iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >四则运算表达式求值
  • 499
分享到

四则运算表达式求值

2023-06-03 00:06:39 499人浏览 薄情痞子
摘要

四则运算表达式求值两个要点1.中缀表达式转后缀表达式2.后缀表达式求值中缀表达式转后缀表达式从左到右遍历中缀表达式的每个数字和符号.若是数字就输出,成为后缀表达式的一部分.若是符号则判断其与栈顶符号的优先级,是右括号或者优先级低于等于栈顶符

四则运算表达式求值
两个要点
1.中缀表达式转后缀表达式
2.后缀表达式求值

中缀表达式转后缀表达式
从左到右遍历中缀表达式的每个数字和符号.
若是数字就输出,成为后缀表达式的一部分.
若是符号则判断其与栈顶符号的优先级,是右括号或者优先级低于等于栈顶符号,则栈顶元素依次出栈并输出,再将当前的符号进栈。一直到最终输出后缀表达式为止。

后缀表达式求值
从左至右遍历表达式的每个数字和符号,遇到数字就进栈,遇到符号,就弹出栈顶两个元素运算,再将运算结果入栈。一直到最终获得结果。

jdk 1.7+

  1. "9 + ( 3 - 1 ) * 3 + 10 / 2";  
  2.         System.out.println(calc(target));  
  3.     }  
  4.   
  5.     // 中缀表达式转后缀表达式  
  6.     " ");  
  7.   
  8.         ")":  
  9.                 "(")) {  
  10.                     '(')) {  
  11.                         result.addLast(ele);  
  12.                     }  
  13.                 }  
  14.                 "(":  
  15.                 stack.addFirst(c);  
  16.                 "+":  
  17.             "-":  
  18.                 "*") || ele.equals("/") || ele.equals("+") || ele.equals("-")) {  
  19.                         result.addLast(stack.removeFirst());  
  20.                     } "*":  
  21.             "/":  
  22.                 stack.addFirst(c);  
  23.                 "*") || ele.equals("/") || ele.equals("+") || ele.equals("-")) {  
  24.                 Float f1 = result.removeFirst();  
  25.                 Float f2 = result.removeFirst();  
  26.                 "+":  
  27.                     result.addFirst(f2 + f1);  
  28.                     "-":  
  29.                     result.addFirst(f2 - f1);  
  30.                     "*":  
  31.                     result.addFirst(f2 * f1);  
  32.                     "/":  
  33.                     result.addFirst(f2 / f1);  
  34.                     break;  
  35.                 }  
  36.             } else {  
  37.                 result.addFirst(Float.valueOf(ele));  
  38.             }  
  39.         }  
  40.         return result.removeFirst();  
  41.     }  
  42. }  

结果:
[9, 3, 1, -, 3, *, +, 10, 2, /, +]
20.0

--结束END--

本文标题: 四则运算表达式求值

本文链接: https://www.lsjlt.com/news/231765.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 四则运算表达式求值
    四则运算表达式求值两个要点1.中缀表达式转后缀表达式2.后缀表达式求值中缀表达式转后缀表达式从左到右遍历中缀表达式的每个数字和符号.若是数字就输出,成为后缀表达式的一部分.若是符号则判断其与栈顶符号的优先级,是右括号或者优先级低于等于栈顶符...
    99+
    2023-06-03
  • python四则运算表达式求值的方法
    这篇文章主要讲解了“python四则运算表达式求值的方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python四则运算表达式求值的方法”吧!四则运算表达式求值思路说明使用双栈来实现&am...
    99+
    2023-07-02
  • python四则运算表达式求值示例详解
    目录四则运算表达式求值思路说明算法步骤代码四则运算表达式求值 思路说明 使用双栈来实现——存放数值的栈 nums 与存放运算符的栈&nbs...
    99+
    2022-11-11
  • java算术表达式求值怎么写
    要求解一个算术表达式的值,可以使用栈来实现。具体步骤如下: 创建两个栈,一个用于存储操作符(operatorStack),一个用于...
    99+
    2023-10-23
    java
  • Python正则表达式初识(四)
    今天继续给大家分享Python正则表达式基础知识,主要给大家介绍一下特殊字符“{}”的用法,具体的教程如下。特殊字符“{}”实质上也是一个限定词的用法,其限定前面字符所出现的次数,其常用的模式有三种,分别是“{数字}”、“{数字,}”和“{...
    99+
    2023-01-31
    正则表达式 Python
  • linux中awk、正则表达式、正则运算符怎么用
    小编给大家分享一下linux中awk、正则表达式、正则运算符怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!使用awk作为文本处理工具,正则表达式是少不了的。...
    99+
    2023-06-13
  • C++表达式求值详解
    目录一.细节处理:1.注意负数 因此要进行字符串预处理2.考虑除数为03.原字符串再加上一个定界符 '#'4.优先级:二.知识要点:三.完整源码:四.测试结果:总结一.细节处理: 1...
    99+
    2022-11-12
  • 正则表达式-问号的四种用法
    问号在正则表达式中有四种常见的用法:1. 匹配零个或一个字符:在正则表达式中使用问号表示前面的字符或子表达式可选,即出现零次或一次。...
    99+
    2023-09-02
    正则表达式
  • c语言逻辑表达式的运算规则是什么
    C语言逻辑表达式的运算规则如下:1. 逻辑与(&&):如果两个操作数都为真(非零),则结果为真;否则为假(0)。2. 逻辑或(||)...
    99+
    2023-08-16
    c语言
  • Python for Informatics 第11章之正则表达式(四)
    注:以下文章原文来自于Dr Charles Severance 的 《Python for Informatics》 11.3 组合查询和抽取   如果我们想以“X-”字符串开头的行中找到数字,就像下面...
    99+
    2022-06-04
    正则表达式 Python Informatics
  • C++中的运算符和表达式
    目录(1)算术表达式(2)赋值运算符(3)逗号运算符(4)关系运算符(5)三元表达式(6)sizeof函数(7)数据类型转换(7.1)显式转换(7.2)隐式转换(8)总结 在编程语言...
    99+
    2022-11-13
  • C语言运算符与表达式
    目录表达式函 数 概 述赋值运算符与赋值表达式变量赋初值自动类型转换强制类型转换算数运算符与表达式算术运算符算术表达式优先级与结合性自增自减运算符关系运算符与表达式优先级与结合性逻辑...
    99+
    2022-11-13
  • Python -- 三元表达式(三目运算
    一些语言(如Java)的三元表达式形如: 判定条件为真时的结果:为假时的结果 Python的三元表达式有如下几种书写方法: if __name__ == '__main__': a = '' b = 'True' c = 'F...
    99+
    2023-01-31
    表达式 Python
  • C#运算符表达式的使用
    这篇文章主要介绍“C#运算符表达式的使用”,在日常操作中,相信很多人在C#运算符表达式的使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C#运算符表达式的使用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧...
    99+
    2023-06-18
  • 关于c语言逗号表达式的运算规则知识点
    逗号表达式是一个有多个子表达式组成的表达式,每个子表达式用逗号分隔。逗号表达式的运算规则如下:1. 逗号表达式从左到右依次计算每个子...
    99+
    2023-08-15
    C语言
  • JavaScript有哪些表达式和运算符
    本篇内容主要讲解“JavaScript有哪些表达式和运算符”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JavaScript有哪些表达式和运算符”吧!  1、表达式  在定义完变量后,就可以对它...
    99+
    2023-06-03
  • 详解python的运算符与表达式
    目录表达式什么是表达式?运算符算术运算符赋值运算符比较运算符逻辑运算符成员运算符对象实例运算符位运算符总结表达式 什么是表达式? # • 表达式由一个或多个操作数通过操作符组合而成。...
    99+
    2022-11-12
  • 运算符、表达式和内置对象
    一、实验目的 1.会使用IDLE编辑器编写简单数据类型; 2.掌握常量、变量的表示方式和简单操作; 3.掌握Python语言中基本的输入和输出方法; 4.掌握Python语言的各种运算符以及这些运算符...
    99+
    2023-10-07
    python 爬虫 numpy
  • Python运算符与表达式是什么
    今天就跟大家聊聊有关Python运算符与表达式是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Python运算符与表达式。什么是运算符:运算符用于执行程序代码运算,会针对一个以上...
    99+
    2023-06-04
  • python正则表达式之作业计算器
    作业:计算器开发 实现加减乘除及拓号优先级解析 用户输入 1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 +10 * 568/14 )) - (-...
    99+
    2022-06-04
    作业 计算器 正则表达式
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作