Golden Thumb

1-on-1 tutor of chosen kids
正文

Lucas 鏖战后缀表达式:2 3 4 5 - * 6 7 8 - - * + 9 +

(2021-02-12 05:36:30) 下一个

这是大学数据结构算法的内容,求值后缀表达式。这位小学四年级的孩子却能越战越勇。

Lucas 用了不太理想的堆栈实现,效率低下。但堆栈的正确性没问题。咱们先暂且宽容他吧。

Lucas did a super good job today! [Rose][Rose]

His program can evaluate something as complicated as

2 3 4 5 - * 6 7 8 - - * + 9 + 

which is the corresponding postfix expression of this original infix expression:

2 + 3 * ( 4 - 5 ) * ( 6 - ( 7 - 8 ) ) + 9

搞定加法后,Lucas 没有被减法难住,巧妙地解决了两个操作数的出栈顺序问题:

如法炮制,除法也有操作数出栈顺序问题。Lucas 继续施展妙招。却遇到程咬金(整数除法有点特别,几分之一都变成零了)。

他大喊一声:“This time we have to add another line of code here.”

他调侃我:“Do you know what cs stands for?”

我:“Computer Science.” 我知道这不是他代码中的那个变量名 cs 。

他继续:“What is cs and what is bcs?”

我:“I have no idea.”

他:“除数 and 被除数。”

接着是一阵得意的坏笑 ......

 

[ 打印 ]
阅读 ()评论 (0)
评论
目前还没有任何评论
登录后才可评论.