从来没有如此专注于编程过,即使在大一学习课程中学习C++时也未有过这样主动,不觉厌烦,就更不用说Java学习的时候了,那时候就是上课吧,然而感觉效率一点也没有,根本没有心去学习,而那时也觉得编程如此难学。经过时间的打磨,可能是成长了不少,懂得了编程的重要,也或许是终于开窍,对于编程的学习由被动变为了主动,总之,态度上的转变是肯定有的。也算是悬崖勒马,及时回头,我相信都还来的及!
这一周脑袋一直装着二柱子的那个题,在上周的基础上老师又提出了更高的要求。选择打印方式,是否有乘除法,数字范围,这都是不难解决的问题,花时间最多的就是括号的使用,如何在由多个数组成的个运算式中加入(),成了我走路,吃饭甚至睡觉都在思考的问题。可能思路很简单,但是如何实现就不是那么容易了,两个数时简单,可以在输出时就加上括号,然后在多个数参与运算的表达式中如何插入括号呢?后来想到了用字符串,因为字符串之间的加法很简单,好比string3=string1+‘('+string2+')' ,一样很容易实现,然而要把整型与字符型的元素合在一起就没那么就简单了,所以想到了用itoa()函数把整型转换成字符串型。括号的插入实现。
然而,运算过程中是否除得尽,在长的运算式中就会很麻烦,这使我想到数据结构中的堆栈,可以实现对四则运算的运算,如果在计算的过程中加入是否除尽的判断,那么问题将会迎刃而解。然而问题又来了,数据结构不会啊,真后悔当时没认真学,因为当时觉得这门课程很无聊,不知道有什么用,很难听懂也就放弃了。
如此种种想法在脑子里焦灼,也让我更进一步的认识到了自己,不能为了学习某一门知识而去学习,这样往往都是在勉强自己。只有当自己转变态度,真正的需要去学习时,这次才是最佳的学习时机。缺乏数据结构的相关知识,也让我看到了自己的不足,与解决问题时的无能为力,所以在今后的编程中,慢慢的接触数据结构,并应用于解决自己面对的问题,体会一下用数据结构解决问题之美!加油,肯定做的到!