作者qazxsw99 (qazxsw99)
看板Prob_Solve
标题Re: [问题]请问我要啥资料结构
时间Thu Aug 31 13:14:44 2006
※ 引述《horngsh (dotNetProgrammer)》之铭言:
: 各位好:
: 我想作一个类似运算式分析并运算的命令列, 如以下:
: ? 1+3
: 4
: ? 2*6
: 12
: ? 1+3 + 2*6
: 16
: ? (1+5) * 6 + 2*4
: 44
: 请问我要如何去parse使用者可能输入的算式并算出答案?
: 感恩您!
转成後序表示法(postfix expression)
经由...二元树或是堆叠来存资料
然後运算...
ex: AB*
堆叠里面的资料是:
top: *
B
A
pop出第一个(*) 暂存
随後若pop出两个都是数字就做运算
至於括号...您可以多想一点就知道如何达成了~:)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.231.163.45
※ 编辑: qazxsw99 来自: 61.231.163.45 (08/31 13:16)