5个月的编程记录

news/2024/9/25 10:00:21/

        不知不觉间,我已经在计算机这条道路上走过了五个月。从五个月前第一次翻开《C Primer Plus》开始,我便对编程产生了浓厚的兴趣。这门学科与我高中所学的死板知识截然不同,每个问题都有千变万化的解法,让我感到无比新鲜。

        几天后,我开始在B站寻找C语言的视频,因自己看书效率不高,加上初学时的迷茫,我便选择了跟随视频学习。当时我观看的是JZ的课程,他讲解《C Primer Plus》这本书。经过25天的努力,我终于掌握了C语言。那段时间,我甚至痴迷到高考前两个月,隔几天就请假不上课,因为高考的课程太无聊了,远不及编程有趣(现在感觉大学的课也一样,但我不会请假,只带着笔记本去)。

        搞定C语言后,我便开始了数据结构与算法的学习。起初,我对这一切感到无从下手,连二分查找都要思考半天。即使看了视频,很多知识也很快就模糊了。后来我意识到,光看不练是没用的,我需要更多实践。于是,我又在B站发现了左程云大神的算法课。虽然他的课程时长较长,但如果耐心听下去,我能够理解许多内容。由于他用的是Java,我便开始学习Java。在学习了一个多月后,我跟着黑马的视频深入学习Java,这些内容通俗易懂,阿伟的课更是趣味十足,这让我下定决心要专攻Java。现在回想起来,确实不学Java的话,我这学历也没办法在C++领域立足,毕竟我对硬件并不感兴趣,所以也不会走嵌入式的路线。

        看完Java上部课程大约用了一个月,到了6月底,我开始接触力扣的题目,尽管进展缓慢,感觉每道题都特别难。但在观看了左程云老师的课程并完成基础数据结构与算法的学习后,我终于进入了真正的刷题阶段,大约在8月20多号。

        7月中旬时,我开始学习黑马的Java下部,发现内容比上部难得多,至今我也只学了60多节课。随后,我开始接触JavaWeb的前端技术,内容相对简单,跟着视频一步步完成。如果遇到版本不对,弹幕也会提醒,于是我花了大约20多天学完了前端技术栈,包括HTML、CSS、JS、Ajax、Axios、Vue和Element(不过现在已经有一个月没写前端了,感觉自己忘了很多)。接着,我又学习了后端技术,掌握了Maven和Spring Boot(现在也有一段时间没写了,感觉也忘了不少)。

        一开始我也想过写游戏,写了300多行代码,但感觉自己的实力有限,最终放弃了这个计划。

        开学后,我便走进了ACM实验室,向学长请教,并分享了我的CSDN账号。经过一番努力,学长给我了一些题目让我完成,我也顺利进入了实验室。在我的软磨硬泡下,我和叶学长组队参加了21号的ICPC网络赛。结果并不理想,A题是我们能够解决的,但G题花了我们两个多小时,两个学长拼命解决数论问题,而我只能在一旁看着A题。由于我的英语水平有限,很多内容听不懂,只能听他们讨论逆元求和,感觉很无奈。最后20多分钟,我们依然没能搞定G题,转向A题时时间已不多,最终只成功AC了三题。还有一道背包问题,我误翻译了题目,以为“above”是所有比它大的数,其实是指所有背包在它上面的,导致叶学长浪费了一个小时,最终结果还是错的,心里很抱歉。不过还好,我们队的洛谷高手最终解决了这个问题,他还说这是洛谷的入门题,真是太强了!

        这段时间的经历,我在QQ空间里记录了许多,如果你感兴趣,可以私聊我。

        


http://www.ppmy.cn/news/1530240.html

相关文章

通过pyenv local 3.6.1 这里设置了当前目录的python版本,通过pycharm基于这个版本创建一个虚拟环境

要在 PyCharm 中基于你通过 pyenv local 设置的 Python 版本创建虚拟环境,可以按照以下步骤进行操作: 步骤 1: 获取当前使用的 Python 路径 通过 pyenv 查找当前项目下的 Python 解释器路径,使用以下命令: pyenv which python …

LeetCode从入门到超凡(二)递归与分治算法

引言 大家好,我是GISer Liu😁,一名热爱AI技术的GIS开发者。本系列文章是我跟随DataWhale 2024年9月学习赛的LeetCode学习总结文档;在算法设计中,递归和分治算法是两种非常重要的思想和方法。它们不仅在解决复杂问题时表…

测试面试题:接口测试与功能测试相比较的优点有哪些?

一、测试效率高 接口测试可以在功能界面尚未开发完成时就进行,能够更早地发现问题,为后续的开发工作争取更多时间,从而加快整个项目的进度。 接口测试通常可以通过自动化的方式进行,一旦建立好测试框架和脚本,可以快速…

【图论】最短路应用

1135. 新年好 题目 提交记录 讨论 题解 视频讲解 MarkDown视图Copy 重庆城里有 nn 个车站,mm 条 双向 公路连接其中的某些车站。 每两个车站最多用一条公路连接,从任何一个车站出发都可以经过一条或者多条公路到达其他车站,但不同的…

14 vue3之内置组件trastion全系列

前置知识 Vue 提供了 transition 的封装组件,在下列情形中,可以给任何元素和组件添加进入/离开过渡: 条件渲染 (使用 v-if)条件展示 (使用 v-show)动态组件组件根节点 自定义 transition 过度效果,你需要对transition组件的name属性自定义。…

[go] 模版方法模式

模版方法模式 在一个方法中定义了一个算法的骨架,而将一些步骤延迟到子类中。模版方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。 模型说明 AbstractClass: 会声明作为算法步骤的方法, 以及依次调用它们的实际模板…

从0到1搭建权限管理系统系列三 .net8 JWT创建Token并使用

创建Token 创建token的因素(条件)有很多,在该篇文章中,采用jwt配置和用户基本信息作为生成token的基本因素(读者可根据系统,自由改变生成token因素)。 在JwtPlugInUnit.CS中创建2个方法&#xf…

828华为云征文|华为云Flexus云服务器X实例Windows系统部署一键短视频生成AI工具moneyprinter

在追求创新与效率并重的今天,我们公司迎难而上,决定自主搭建一款短视频生成AI工具——MoneyPrinter,旨在为市场带来前所未有的创意风暴。面对服务器选择的难题,我们经过深思熟虑与多方比较,最终将信任票投给了华为云Fl…