我的递归函数接受这个字符串的String prefix
和int index
(初始值为0)。根据索引计算postfix
字符串
Storage
是保存正在处理的前缀字符串的postfix
字符串和整数index
的类。该类的目的是可以同时返回string和int。
输入输出的另一个例子:| ^+- abc +D-EF |AB- c +DEF-+^ |AB- a +AB-^ |
例子给定输入 | 期望输出 | 当前输出 | ——+ ABC | AB + C - | AB + A - |
---|---|---|
——公元前+ | ABC + - | ABC + - |
您返回了索引,但没有使用它。因此,当convert
处理一个非平凡表达式时,它将索引向前移动1以上并返回它,但是您丢弃该返回值并将其向前移动1。您可以通过使用索引来解决这个问题。
替换第二次出现的
index += 1;
index = postfix1.getIndex() + 1;