handling unary minus for shunting-yard algorithm

前端 未结 1 1391
一整个雨季
一整个雨季 2020-12-18 01:18

Is there a better way to handle unary \"-\" in converting a infix expression to a postfix one?

The obvious one would be prefix every unary \"-\" with a 0. Does anyon

相关标签:
1条回答
  • 2020-12-18 01:52

    The way I did this years ago was invent a new operator for my postfix expression. So when I encountered a unary minus in the infix, I'd convert it to #. So my postfix for a + -b became ab#+.

    And, of course, my evaluator had to know that # only popped one operand.

    Kind of depends on how you're using the postfix expression once it's built. If you want to display it then your special # operator would probably confuse people. But if you're just using it internally (which I was), then it works great.

    0 讨论(0)
提交回复
热议问题