周记007

99 阅读3分钟

随着新学期的钟声敲响,我踏入了大学的讲堂,亲身体验了那些被戏称为“水课”的课程。我毫不犹豫地选择了教室最后一排靠门的座位,仿佛随时准备逃离这枯燥的课堂。

学习成果汇报

我给自己定下的目标是每天至少完成五道题目,然而实际上,我平均每天只完成了两到三题。我尝试着通过网课来提升自己的高等数学水平,但最终,我发现自己陷入了一种对牛客竞赛的抵触情绪中。面对那些难题,我时常只是匆匆一瞥他人的代码,试图从中汲取灵感。

学习内容的叙述

每当我点击进入牛客竞赛,心中总会涌起一股难以言说的抗拒。题目的难度让我不得不依赖于他人的代码,试图从中学习。如果说我学到了什么,那就是一种阅读和理解他人代码的能力。我学会了如何从他人的代码中汲取精华,如何将这些精华融合,构建起自己对题目的理解。

一个具体的例子

QQ20240929-233044.jpg

在解题的过程中,我遇到了一个难题。我最初的设想是使用一个二维数组来存储每个数字及其坐标。然而,这个想法虽然简单,实现起来却异常困难。我纠结于坐标的具体表示方式,是应该再建立两个数组,还是使用字符串。无论哪种方法,都显得繁琐且耗神。

最终,我通过观察他人的代码,意识到自己的思维陷入了误区。我试图明确地表示每个数字的坐标,却忽略了题目中给出的条件。我本可以利用这些条件进行顺序判断,每次更新坐标,而无需考虑如何定位每个数字。

反思与总结

尽管这一周我没有继续上网课,只是持续地刷题,但我意识到编程不同于应试教育,它自由而灵活,没有固定的解法,没有固定的题型,一切都只是由简单的语法构成。学会阅读他人的代码,对我来说,是一项宝贵的技能。

在解题的过程中,我常常能够想出一个大致的解决方案,但在细节上却总是遇到困难。因此,我经常阅读他人的代码,以此来更新自己的思维方式,简化自己的思考。

通过不断地练习,我逐渐明白了一个道理:粗糙的想法会导致复杂的思维,冗长的代码,以及难以维护的后期工作。这是一个恶性循环,往往导致错误的结果,迫使我不得不从头再来,直到头疼欲裂。或许,阅读他人的代码,对于像我这样习惯于应试教育的人来说,是一种获得新编程风格的好方法。它可以帮助我更好地运用数组、字符串和数据结构,写出更简洁、更舒适的代码。