问题标签 [infix-notation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
oop - 从中缀到前缀符号的转换
我最近开始学习 Clojure。通常它看起来很有趣,但我不能习惯一些语法上的不便(与以前的 Ruby/C# 经验相比)。
嵌套表达式的前缀表示法。在 Ruby 中,我习惯于使用从左到右的链接/管道来编写复杂的表达式:some_object.map { some_expression }.select { another_expression }
。当您逐步从输入值移动到结果时,这真的很方便,您可以专注于单个转换,而无需在键入时移动光标。相反,当我在 Clojure 中编写嵌套表达式时,我将代码从内部表达式编写到外部,并且必须不断移动光标。它减慢并分散注意力。我知道->
and->>
宏,但我注意到它不是惯用的。当您开始使用 Clojure/Haskell 等进行编码时,您是否遇到过同样的问题?你是怎么解决的?
c++ - 使用 std::map 评估表达式树
我正在使用抽象数据类型来评估与以前不同的方式相反的表达式树,我不确定如何准确地使用 map 函数。
好的,所以这个功能
调用这个函数,在这个函数中我不知道要返回什么
我以前用这种不同的方式这样做
java - 在字符串中的每一个或两个字符后插入空格
我需要编写代码来更正用户输入。输入是中缀形式的数学表达式。为了使我的计算正确,我需要将每个操作数与运算符隔开。
你能帮我写一个能提供以下预期结果的方法吗?
预期输入:13*21-5+33 预期输出:13 * 21 - 5 + 33
我所做的研究:我只能找出如何在字符串中的每个字符之间添加空格,而这不适用于计算具有两位数值的表达式。即:1 3 * 2 1 - 5 + 3 3. Java 中如何在现有字符串的每个字符后插入空格?
谢谢
infix-notation - 从中缀转换为后缀时,如何在单进制和二进制 +/- 之间指定
在这个语法下:
我正在使用一个函数(分流码算法)从中缀转换为后缀并且它有效!除了它不包括一元 - 意思是否定和一元 + 这并没有真正做任何事情。
一旦转换为 post fix,一元 + 将是 ap,一元 - 将是 m。例如:
因此,如果我正在阅读中缀表达式,如何在一元和二进制加减之间指定?
java - 用于验证中缀并将中缀转换为前缀/后缀表示法的标准 java 库?
是否有任何 java 实用程序来验证和/或将中缀转换为前缀/后缀
stack - Maximum number of elems on stack for infix -> postfix translation
I got this as an interview question.
What is the maximum number of elements that can be on stack at a specific moment while doing a translation from infix form to reversed postfixed Polish form?
I know that the principle is that on the stack there cannot be elements with higher priority (usually * and /) under the ones with smaller priority (+ and -). I tried making an algorithm keeping track of a global and local maximum number, but I didn`t found out a certain rule.
For example if i have infix: 2 - 3 * 4 * 5 / 1 + 10
Stack 1: - * * /
=> maxLocal = 4
maxGlobal = 4
Stack 2: (After eliminating /, * and * because + has lower priority) - +
=> maxLocal = 2
maxGlobal = 4
Can you please help me?
objective-c - 后缀到中缀转换器目标 C
我正在尝试制作一个 RPN 计算器程序,并希望有一个标签来显示您输入的表达式。如果您输入 3,5,4,+,/,标签将显示 ((4+5) / 3)。我在实现这一点时遇到了麻烦。我正在使用一个 mutableArray,我称之为堆栈,它同时包含数字和操作数。另一个主要问题是传递的字符串不会是一个完整的字符串,而是每次用户输入一个值时都会传递它,因此程序必须在堆栈上只有一个或两个项目的情况下连续运行。这是代码。
c++ - 带有功能支持的后缀中缀
整个网络上有许多算法可以将中缀转换为后缀。但我的问题是如何使它支持功能?例如 sin(x+y)*z。
我会很感激一个代码。
python - 好的中缀前缀在 Python 中实现,涵盖 C 程序的更多运算符(例如 <、<= 等)?
我一直在寻找 Python 的实现,但没有太多运气,它将中缀转换为前缀,范围在足够数量的算术和逻辑运算符上,并关心它在一个好的 python 实现上的属性。更具体地说,我对出现在 C 程序的条件子句上的运算符感兴趣。(例如,它将转换a > 0 && b > 1
为前缀。
由于我仍然是 Python 的新手,如果有人可以为我提供实现或一些关于此的提示,我将不胜感激。
我在互联网上找到了一个我丢失了(下)参考的实现,但它只关心更简单的运算符。我对如何在这个版本上执行此操作有点无能为力,如果有人知道一个已经包含所有运算符的版本,我将不胜感激,以避免任何运算符被意外忽略。
这样的实现也应该考虑括号。
如果您需要更多详细信息,请发表评论!
谢谢你。
parsing - 如何将用户友好的中缀数学代码转换为 Clojure 代码?
我希望用户能够像这样输入:
,因此它将转换为:
,所以我可以将它评估为一些稍后将被 JITted 和有效执行的函数。
是否已经有可用的库(具有操作员优先级)可以在最新的 Clojure 中运行?