2016 - 2024

感恩一路有你

java算术表达式 疑问:求表达式a b*(c-d)-e/f的波兰式和逆波兰式?

浏览量:2942 时间:2021-03-29 15:33:12 作者:admin

疑问:求表达式a b*(c-d)-e/f的波兰式和逆波兰式?

A*b*C→**ABC A*b*C*D→**,右端是堆栈顶部]读入(,放入堆栈,堆栈中是(,输出:(空)读入a,直接输出,堆栈是(,输出:a,读入,堆栈是(,输出:a,读入B,直接输出,堆栈是(,输出:AB,读入),依次推出堆栈中的符号,直到遇到a([注意括号不是输出],堆栈为空,输出:AB,读入*,堆栈为*,输出:AB,读入(,堆栈为*,输出:AB,堆栈为*)读取(,放入堆栈,堆栈为*(,输出:AB,读入C,直接输出,堆栈为*(,输出:AB,C,读入-,放入堆栈,堆栈为*(-),输出:AB,C,读入D,直接输出,堆栈为*(-,输出:AB,CD,读入)。依次推出堆栈中的符号,直到遇到a([注意括号不输出]、堆栈为*(,输出:AB,CD)-读入*、放入堆栈、堆栈中为*(*)、输出:AB CD读入E、直接输出、堆栈中为*(*)、输出:AB CD-E读入,[此时堆栈中*的优先级高于堆栈中*的优先级,所以*先取出,然后放在堆栈上],堆栈中是*(,输出:ab CD-E*读入F,直接输出,堆栈中是*(,输出:ab CD-E*F)读入),依次推出堆栈中的符号,直到遇到一个为止([注意括号没有输出],堆栈是*,输出:abcd-E*F此时,读入完成,还有一个*在堆栈中,输出:abcd-e*f*完成!以上是从中缀表达式到后缀表达式的全过程,并写出了栈的变化。

不同的编程语言对程序员的思维塑造有区别吗,区别大不大?

这是一个非常好的问题。作为一个工作多年的程序员,让我谈谈我的看法。

首先,不同编程语言的应用对程序员的编程思想有一定的影响。即使是同一类型的编程语言在使用上也会有一定的差异,而这些差异往往会影响程序员的编程思想。

以目前流行的Java和python为例,虽然它们都是全场景编程语言和面向对象编程语言,但Java程序员和python程序员在编程思想上有一定的差异。例如,Java程序员在解决问题时往往更依赖于“框架”和“容器”,而Python程序员则更依赖于各种“库”,因此Java程序员往往需要有很强的抽象设计能力,而Python程序员则需要有很强的集成能力。

在分析和设计问题时,使用不同的编程语言自然会考虑使用哪种解决方案。不同的编程语言也会导致程序员的设计思想不同。当然,除了编程语言之外,工作任务对程序员的思维方式也有更直接的影响。

例如,研发级程序员和应用级程序员在分析问题时往往有不同的出发点,不同的出发点自然有不同的思维方式。例如,在解决问题的过程中,目前从事人工智能平台研发的程序员往往更注重算法的设计以及如何通过算法迭代来提高性能,而使用人工智能平台进行行业开发的应用级程序员在考虑问题时往往会考虑更多的行业场景。

最后,在考虑问题时,前端程序员和后端程序员之间存在一些差异。前端程序员更注重用户体验,也更注重各种开发工具对编程效率的影响。

java算术表达式 逆波兰式计算过程 java中加减乘除

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。