简单的数值表达式求解器

2024-03-15

首先,抱歉我的英语不好。

对于我的算法和数据结构类的最后一个项目,我需要用 C++ 创建一个简单的数值表达式求解器。它需要解决简单的表达式,例如3*12+(4-6)。我设法拆分表达式并将运算符与数字分开,但我无法继续下去。诀窍是将运算符放在二叉树上,但我还没有设法做到这一点。

该程序只需使用默认的 C++ 库。也许我可以建立一些基本的实现?

提前致谢。


暂时忘记二叉树吧。

您需要将表达式转换为逆波兰表示法 http://en.wikipedia.org/wiki/Reverse_Polish_notation。在转换过程中,您正在构建一棵二叉树!

[逆波兰表示法][2]

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

简单的数值表达式求解器 的相关文章

  • C++:Linux平台上的线程同步场景

    我正在为 Linux 平台实现多线程 C 程序 其中我需要类似于 WaitForMultipleObjects 的功能 在搜索解决方案时 我发现有一些文章描述了如何在 Linux 中实现 WaitForMultipleObjects 功能
  • C 语言中的套接字如何工作?

    我对 C 中的套接字编程有点困惑 You create a socket bind it to an interface and an IP address and get it to listen I found a couple of
  • 如何通过实体键添加/删除与实体框架的多对多关系?

    I tried using Entities e new Entities EntityKey key new EntityKey Entities Users UserId 20 User user new User EntityKey
  • 从 C++ 中的函数返回二维数组[重复]

    这个问题在这里已经有答案了 可能的重复 C 从函数返回多维数组 https stackoverflow com questions 3716595 c returning multidimension array from function
  • 如何有效地左填充字节数组

    假设我有一个数组 LogoDataBy byte 0x00000008 0x00000000 0x41 0x00000001 0x42 0x00000002 0x43 0x00000003 0x44 0x00000004 0x31 0x00
  • 在Python中寻找坐标系中某些点之间的最短路径

    我编写了一个代码 可以在坐标系中的特定宽度和长度范围内生成所需数量的点 它计算并列出我使用欧几里德方法生成的这些点的距离矩阵 我的代码在这里 import pandas as pd from scipy spatial import dis
  • 等于方法实现助手 (C#)

    每次我编写一些数据类时 我通常都会花很多时间编写 IEquatable 实现 我写的最后一堂课是这样的 public class Polygon public Point Vertices get set 实施 IEquatable 是一项
  • Apple IOS 上的 C# 应用程序 [已关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有基于 C Net 的应用程序 有什么方法可以在 Apple IOS 上运行这些应用程序吗 我没有资
  • 获取进程的所有 DLL

    我想获取为给定进程加载的所有 dll 的列表 我目前正在使用 NET框架4 0 我知道有一个bug https connect microsoft com VisualStudio feedback details 546430 syste
  • 如何使用 Linq to Sql 修剪值?

    在数据库中 我有一个名为 联系人 的表 名字和其他此类字符串字段设计为使用 Char 数据类型 不是我的数据库设计 我的对象 Contact 映射到属性中的字符串类型 如果我想做一个简单的测试 通过 id 检索 Contact 对象 我会这
  • 当一种语言是另一种语言的平行超集时,这意味着什么?

    我正在阅读关于实时并发 C 的期刊文章 http link springer com article 10 1007 2FBF00365999 并且它在摘要中提到 因此你们中的任何人都可以通过该链接查看上下文 Concurrent C 是
  • Sharepoint 的 CAML 查询中的日期时间比较

    我正在尝试从共享点列表中获取某些项目 具体取决于自定义列中的日期 我已经使用 U2U Caml Builder 创建了查询 这很有效 但是当我将其放入 Web 部件中自己的代码中时 它总是返回列表中的所有项目 这是我的代码 DateTime
  • 使用客户端 hello 消息进行 TLS 协议检测

    我需要检测网络流量中的 https 数据包 到目前为止 我将所有 443 标记为 https 但我不想再在这种情况下使用端口信息 检查客户端问候消息是否足够 Check 22 and version info 0300 0301 or 03
  • XSD、泛型和 C# 类的困境

    我有以下简单的 XSD 文件
  • 如何正确对齐 WPF GeometryGroup 中的路径?

    我正在使用一个GeometryGroup在圆的中心绘制一个符号 下面的示例显示了我在对此进行实验时的尝试之一 它具有从同一原点 32 32 出发的三条直线
  • Opencv 对象检测:ORB GPU 检测器和 SURF GPU 描述符提取器

    我只是做了一个小实验来尝试不同的检测器 描述符组合 我的代码使用 ORB GPU 检测器来检测特征 并使用 SURF GPU 描述符来计算描述符 我使用 BruteForceMatcher GPU 来匹配描述符 并使用 knnMatch 方
  • QT C++ QRegularExpression 多个匹配

    我想使用正则表达式从 QString html 中提取信息 我明确想使用正则表达式 无解析器解决方案 和类Q正则表达式 http qt project org doc qt 5 0 qtcore qregularexpression htm
  • Eclipse CDT C/C++:包含另一个项目的头文件

    我在 Eclipse CDT 中有两个 C 项目main and shared In shared我有一个名为calc h 我想在中使用这个标头main 所以我做了以下事情 added include calc h到相关文件main In
  • 如何将 IDispatch* 放入托管代码中

    我一直在考虑尝试使用 C 编写一个实现 OPOS 服务对象的 COM 对象 我已经使用自动化和 MFC 在 C 中完成了它 这并不太困难 所以我坚持尝试将其转换为一种方法 我将排除界面中的其他方法 因为它们很简单 或者我希望如此 id 6
  • C++11 中引入了哪些重大更改?

    我知道 C 11 中至少有一项更改会导致一些旧代码停止编译 引入explicit operator bool 在标准库中 替换旧实例operator void 诚然 这将破坏的代码可能是一开始就不应该有效的代码 但它仍然是一个破坏性的变化

随机推荐

  • Android - 使用 LocationManager.requestLocationUpdates 时,我需要 WakeLock 吗?

    我的应用程序使用警报定期检查位置BroastcastReceiver启动一个服务 我知道我应该在启动服务之前获取唤醒锁 但我的问题是我什么时候可以释放它 如果我在调用后释放唤醒锁requestLocationUpdates 设备是否可以进入
  • 将一次性代码交换为刷新令牌时出现 Google OAuth redirect_uri_mismatch

    我正在实现 Google OAuth2 服务器一次性代码流程 如下所述 https developers google com identity sign in web server side flow https developers g
  • 如何处理 iOS 中的 Firebase 数据库错误? #AskFirebase

    我需要以不同于所有其他错误的方式处理 权限被拒绝 错误 在 Android 中我已经做到了 Kotlin override fun onCancelled error DatabaseError if error code Database
  • AVAudioPlayer 声音未播放

    在 iOS 8 Xcode 6 中 我有一个包含声音效果的功能 多次更改代码后 它在 iOS 9 中不再起作用 这是我尝试过的 原来的 let bangSoundEffect SKAction playSoundFileNamed Bang
  • Android Studio 2 错误:app:compileDebugJavaWithJack

    这是 Android Studio 2 1 1 的完整错误 我知道这段代码可以编译 因为在其他 PC 上它可以编译 但在 Windows 10 x64 的这台 PC 上却不行 所有其他项目都以类似的结果失败 Error Execution
  • php代码到mysql数据库导出[重复]

    这个问题在这里已经有答案了 可能的重复 最佳实践 在 PHP 中导入 mySQL 文件 分割查询 https stackoverflow com questions 1883079 best practice import mysql fi
  • hibernate 主键的原语或包装器

    我一直在查看各种 hibernate 教程和示例 对于它们的标识 主键属性 有些使用 Java 原始类型 有些使用包装类型 即 private int id vs private Integer id 为什么以及何时使用其中一个作为实体键
  • Asp.net Core 电子邮件确认有时会显示 InvalidToken

    我正在使用 asp net core Identity 2 1 我遇到了电子邮件确认的随机问题 而电子邮件确认有时会说结果 Error InvalidToken 令牌也没有过期 Note 我们正在使用多个服务器 并且我们还将密钥存储在一个地
  • 如何让顶部的大图片变小并最终粘在顶部?

    我想将我的网站分为两部分 包含大图像的标题和包含其他图像 文本等的主要部分 当我滚动页面时 标题上的大图像应该与主要部分一起滚动 在某一时刻 图像应该变得固定 并且主要部分在其后面滚动 我尝试了一些不同的方法 但我无法获得位置 显示 顶部等
  • d3 js - 将气泡聚集到分段

    最新小提琴 https jsfiddle net tk5xog0g 8 https jsfiddle net tk5xog0g 8 第二次摆弄自定义图表 随机将气泡放置在靠近区域的区域 但不能考虑重叠或从中心图表区域脱落的情况 http j
  • 从日期时间中删除分钟 - sql

    DECLARE MinutesToAdd int 20 DECLARE StartTimeDate datetime 2017 06 05 14 37 56 113 DATEADD minute MinutesToAdd StartTime
  • 在 React/Redux 中分派操作时有没有好的方法来防止默认情况?

    我正在调度一个操作 该操作运行一个减速器 在表单提交时将一些文本推送到我的 redux 状态 我知道在 Vue 中你可以preventDefault就在 DOM 中 但我在 React 中没有看到任何东西可以让这看起来成为可能 我想知道阻止
  • WordPress 网站中的 jQuery UI 工具提示

    尝试让工具提示使用图片而不是文本 到目前为止 它适用于我网站中的文本 a href title hello world ALOHA a 这工作正常 它在链接悬停时显示 hello world 但如果我尝试以下操作 工作 jsfiddle 示
  • 如何调试生成格式错误的可执行文件的实验工具链

    我正在使用交叉编译一个实验性的 GNU 免费 Linux 工具链clang http clang llvm org 代替gcc compiler rt http compiler rt llvm org 代替libgcc libunwind
  • sql 将单行转换为键/值列

    我有一个返回 1 行的 SQL 查询 其中包含多个列标题 Col 1 Col 2 Col 3 val 1 Val 2 Val 3 有没有办法将此行转换为 2 列 即 Col 1 Val 1 Col 2 Val 2 Col 3 Val 3 这
  • 严格别名警告,创建对 unsigned char 数组 + 偏移量的 uint32_t 引用

    在 GNU GCC 4 7 0 中 我收到了一些严格的别名警告 我想解决这些警告 我有一个有效负载 来自硬件 unsigned char payload davidlt PAYLOAD SIZE 我有这一行 uint32 t payload
  • 新类型的一个覆盖如何显示?

    我想重写 Haskell 中的默认整数构造函数 以便它们生成字符串 主要是出于好奇 但暂时为 LaTeX 的 frac 不便提供一个很好的输入替代方案 我希望能够使用语言本身 而不是特殊的解析器 但我想这可能行不通 module Main
  • 如何使用 Python 和 MySQLdb 检索 mysql 数据库中的表名?

    我有一个 SQL 数据库 想知道您使用什么命令来获取该数据库中的表名列表 更完整一点 import MySQLdb connection MySQLdb connect host localhost user myself passwd m
  • 关于访问 Tuple2 内的字段时发生错误

    我正在尝试访问 Tuple2 中的字段 但编译器返回错误 该软件尝试在 kafka 主题中推送一个案例类 然后我想使用 Spark Streaming 恢复它 这样我就可以提供机器学习算法并将结果保存在 mongo 实例中 Solved 我
  • 简单的数值表达式求解器

    首先 抱歉我的英语不好 对于我的算法和数据结构类的最后一个项目 我需要用 C 创建一个简单的数值表达式求解器 它需要解决简单的表达式 例如3 12 4 6 我设法拆分表达式并将运算符与数字分开 但我无法继续下去 诀窍是将运算符放在二叉树上