作为一个普通人学习算法的经验分享

CSDN编程竞赛报名地址:https://edu.csdn.net/contest/detail/16

作为一个双非普通本科的本科生,同时在上大学之前对于编程几乎一无所知,可以说编程竞赛在大学几年的时间里深刻改变了我对于编程的认识。

前言

提到编程其实很多人都有一个误区,就是写代码就算是编程,但如果仅仅是学习一些现有的框架去做调包侠是很难具有长久的竞争力的,还需要去了解程序设计相关的算法。算法对于编程人员来讲相当重要,学习算法能够锻炼编程的思维,再学其他技术时往往事半功倍,下面就以我个人学习并参与算法竞赛的经历来分享如何学习算法

参赛经历

因为进入了学校组织参加比赛的实验室,参赛的经历还是挺多的。比如HBCPC(河北省程序设计竞赛),团体程序设计天梯赛,蓝桥杯,都凑活着拿过一些奖。团体的竞赛因为队员水平不一很难评说,蓝桥杯今年侥幸拿了个省一,虽说奖不高,但也经过了很长时间的准备。除此之外之前还有一段时间参加力扣的周赛,每次差不多能做2-3道题

解题思路

不同的比赛侧重点是不一样的,像力扣周赛,HBCPC,CCPC这种都是ACM赛制的,会有罚时,并且只要有一个测试点没过就不算过,这类比赛一般是先挑自己有把握的题目入手。像程序设计天梯赛和蓝桥杯这种计分制的比赛就可以再加上有思路的一部分题目,并且没有必要苛求完美,最后分数高就可以了。同时要主要的是编程的难度并不一定是按照顺序排列的,因为每一个人擅长的本身就是不一样的,除了大家都能做出来的简单题外,其他的就看个人的擅长方向了。读题的时候也要注意,尤其是“注”里面的内容。

经验心得

学算法,练编程能力说到底还是为了提高自身能力,所以不能只是跟着视频或者书去学,还要刷题。刷题的平台尽量找一些大众化的平台,这样找题解会比较方便,或者在B站找个带刷的UP主跟着他刷,这样每次做过的题目都能有个正向的反馈。如果不嫌弃的话也可以往前翻一翻我之前写的博客看刷题的题解,但还是建议跟大佬走吧,我就只是个算法爱好者罢了。

资料分享

初学者不建议直接看算法导论,可以看一些算法竞赛入门的书。如果是为了学好数据结构也可以看一看《大话数据结构》,如果是为了找工作刷题平台推荐力扣和牛客,并且可以经常参加一下周赛,提高能力的同时有积分可以兑换礼品以及抽奖送礼品,何乐而不为呢。
从个人来讲,初期是数据结构和算法竞赛书上学到的基础,但是近期取得的算法上的进步都是在力扣刷题以及切实的竞赛得到的

结尾

报名可以参照文首的链接,或者下面的链接报名
http://t.csdn.cn/4XdWP
感谢您看到了这里,谢谢您的支持。

你可能感兴趣的:(笔记,算法,学习,经验分享)