ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

刷题 678 天的感受!Coding使我快乐,bug使我憔悴!

2021-06-09 15:03:28  阅读:195  来源: 互联网

标签:678 编程 Coding 算法 题目 bug 考试 刷题


一、弄清楚为什么要刷题?

刷题的原因各种各样,结合本人和朋友的经历,以及网上大家的分享,比较有代表性的原因有以下四种:

        ☌ 找工作。当下找工作的氛围下,不管是社招,还是校招,都不可避免的会有上机考试或者面试时手撕代码。

        ☌ 自我能力提升。毕竟在学完相关的理论知识后,还是需要结合实际的编程,将理论很好的掌握,也是进一步强化对编程的熟悉程度、提升自己的能力。

        ☌ 编程大赛 / 考试。现在 LeetCode 的每周竞赛、ACM 大赛、蓝桥杯和各种极限编程大赛,以及计算机二级考试、PAT 考试、课程的上机考试、计算机方向考研或者保研复试的上机考试等,这些都对编程有着一定的要求,促使大家去刷题,提升自身能力,在竞赛或考试中取得理想的成绩。

        ☌ 兴趣爱好、放松,提升自信心。有些人喜欢编程,还有些人拿刷题作为一种放松(……),再或者是在其他方面没有信心但是在编程上很擅长,进而通过刷题来提升一下自己的信心。

不管何种理由都促使我们去刷题,只有在刷题前搞清楚自己是为了什么,这样才会有更多的动力去刷题。

 

二、刷题前需要做哪些准备?

        ☌ 有一门熟悉的编程语言。个人推荐 C++ 或者 Java。

        ☌ 了解基本数据结构和常用算法

                A. 基本的数据结构包括:栈、队列、链表、树、堆等;

                B. 常用的算法:动态规划、分治算法、贪婪算法等。

        ☌ 基本知道如何入手进行算法设计和分析

                A. 算法设计:可以根据要求设计完成相应任务的算法;

                B. 算法分析:给出一个算法可以从时间复杂度和空间复杂度进行分析。

 

三 、小白如何刷题?

根据刷题的目的不同和刷题中会遇到的问题,分为三个部分,具体如下:

---------------------------------------------

1. 目的:建立扎实的 Coding 能力

推荐刷LeetCode中的题目作为练习和提高,目前已有题目 2094 道。

✿ 具体执行为:

        ① 掌握一门基本的编程语言,推荐 Java 和 C++;

        ② 按照特定模块进行系统性刷题。(千万不要简单地按照 easy, mid, hard 的顺序来随机刷题);   

        ③  必须要反复刷题,做到一题多解(时间允许分析每一种解法复杂度),而且不能只盯着高频题目;

        ④  具体刷题时:一看二抄三改四写;

        ⑤  现在 LeetCode 有上千道题,每个部分一定要找有代表性的题目去做,而且在刷题过程中会有模板去套用。

----------------------------------------------

2. 目的:建立求职面试的解题思维

推荐刷 剑指 OfferⅡ,其中一共 75 道题,但是设计各种变形。建议刷至少3 遍。

✿ 具体执行为:

第一遍,不需要死磕,但是要完全弄懂题目,必须看题目的分析。

第二遍,进一步熟悉题目,对于一道题的各种变形也可以做出。

第三遍,对于这不到 100 道题和一些相应的变形已是特别熟练的状态,上机编程没问题,手撕代码也是 ok 的。

---------------------------------

3. 目的:解决可能的问题

A. 可能会遇到的问题

①刷过的题老是忘、②刷题的速度很慢、③坚持不下来

B. 对应解决方案:

①及时重复、与人分享,以及做笔记;

②制定计划、分解计划、快速刷题(为了节约时间,五分钟没有思路,就别浪费时间了。明确认知,这个和高考刷题没什么区别,理解不了,先背下来。);

③为自己制定奖惩措施,或者组队刷题。


小白刷题法

 

四、刷题资料整理

根据本人的经验,再结合网上大家的分享,有一些书籍和网站,以及其他的网络资源可以推荐给大家。

1. 书籍

《大话数据结构》、《啊哈!算法》、《图解算法》

2. 刷题网站

LeetCode、牛客、PAT

3. 其他网络资源

可私信

 

五、最重要的一点

掌握理论固然重要,更重要的还是要动手实践。

重要的事情说三遍:Coding、Coding、Coding

最后送给家人们我很喜欢的一句话:日拱一卒 功不唐捐!


 

不管你是转行也好,初学也罢,进阶也可,如果你想学编程,进阶程序员~

【值得关注】我的 编程学习交流俱乐部 !【点击进入】

C语言入门资料:


 

C语言必读书籍:


 

标签:678,编程,Coding,算法,题目,bug,考试,刷题
来源: https://www.cnblogs.com/huya-edu/p/14866901.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有