阅读1.3.1.7算术表达式求值感受

本文介绍了一种使用两个栈解决算数字符串求值问题的方法,并分享了从这一过程中获得的数据结构与算法的启示。文章强调了面对复杂问题时,应该从最简单的情况出发考虑解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >







用算法来实现算数字符串求值这个问题看似复杂,我刚开始的思路是对每个算数表达式中的子算数表达式统计其左右两端的括号的个数,括号个数越多,则计算优先级越高。但是大师用简单的两个栈就实现了看似复杂的功能。所以给了我我在算法与数据结构方面的启示:

算法与数据结构,本质上是逻辑思维,也就是数学。处理数学问题,用欧拉那句名言,一切从定义触发。遇到复杂问题,先从最简单的角度思考解决问题的方式,如上文的问题。任何问题基本上都是算法与数据结构的推演变换,而数据结构的类型种类也万变不离其中。算法是依托于数据结构的,所以我们遇到问题后,首先从数据结构上思考用何种数据能最合适的解决问题,再配合算法再思考。而不是一上来就将问题复杂化。越是复杂的东西,他们原理和本质越单一,要学会这样思考问题的方式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值