谈一谈「如何学好算法」

本文摘要:来自:帅地玩编程 代码写多了有时候你就会发现自己真的变强了写起代码来bug 也越来越少了分分钟 AC 一道题。 来自:帅地玩编程 代码写多了有时候你就会发现自己真的变强了写起代码来bug 也越来越少了分分钟 AC 一道题。 如何学习算法 的相关文章大家预计也见过不少每小我私家的学习方法都不尽相同这很正常而且对于差别的选手来说例如打 ACM 的玩家不打角逐的玩家来说训练的方式也有不少差异所以别人所说的学习方式更多的是作为你的一种参考。

鸭脖官网进入

来自:帅地玩编程

代码写多了有时候你就会发现自己真的变强了写起代码来bug 也越来越少了分分钟 AC 一道题。

来自:帅地玩编程

代码写多了有时候你就会发现自己真的变强了写起代码来bug 也越来越少了分分钟 AC 一道题。

如何学习算法的相关文章大家预计也见过不少每小我私家的学习方法都不尽相同这很正常而且对于差别的选手来说例如打 ACM 的玩家不打角逐的玩家来说训练的方式也有不少差异所以别人所说的学习方式更多的是作为你的一种参考。

关于递归的可以看我之前的一遍入门级的文章: 为什么你学不会递归?离别递归谈谈我的一些履历

不要眼妙手低当你积累到一定的代码数量你就会逐步来感受了。

当你做一道题时一开始可以先暴力做但后面还得想想该如何优化想不出也没事可以讨论区找空间/时间庞大度更低的代码或者直接搜索引擎搜索一般都能搜到别人的代码。

1、有须要学算法吗?

不外在写之前我想先回覆几个问题或许对于那些刚入门的同学有些许资助。

这篇文章不是来跟你辩说有没有须要学算法的我就做个简朴的回覆我的谜底是 有须要学一学一个 现实且势利的原因预计就是 ----- 大厂都喜欢考察算法了不信你去问问刚刚到场过 2020 校招的同学我自己也到场过 2019 的秋招算法考察基本无处不在如果想要获得面试时机那么就得笔试而笔试大部门公司都是编程题即算法题而且面试中也会经常问到算法数据结构。

显然从找公司的角度看不学算法你会失去许多面试的时机。然而更重要的还是法式 = 数据结构 + 算法算法基本功打好可以让我们走的更远。

2、学算法好慢/好难是我不够智慧不适合学算法吗?

鸭脖官网进入

答不是的如果只是学习下常见算法以后应付下面试/笔试 + 分析下事情遇到的一些问题那么我以为还论不到 天赋来做审判这绝对不是鸡汤固然如果你想打 ACM拿种种奖的那我就不大清楚了。

当我们在做一道题的时候可能会遇到两种情况一种是这道题特么秒杀一眼就懂思路;一种是一脸蒙蔽太难了吧。

(1)、基本数据结构的考察:这类题我以为是比力简朴的主要科场基本数据结构的操作例如二叉树的层序遍历链表的逆序等固然它不会直接告诉你让你来逆序或者遍历。

我的谜底是有须要做。千万不要眼妙手低看着简朴做起来纷歧定简朴AC 之后你还要去讨论区看看大佬们是怎么做的因为有些人的代码真的写的很简练看着就很舒服咱们可以多学一学的固然也有可能谁人人就是你自己。

鸭脖官网进入

3、贪心

我以为对于刚刚入门的选手来说没啥技巧也不要迷恋于种种快捷的方法咱们老实点当个普通人就随着书学根据顺序学就可以了然后 把内里例子的代码都至少打一遍固然还需要跑通效果要切合预期如果不切合就调试到切合预期

固然不要 AC 之后就完事了应该尽可能寻找最优解当你积累了一定的题量那么你真的会发现自己变强了突然感受递归也就那么一回事。

如果你连最基本的数据结构例如链表行列栈二叉树都没有接触过那么我是不建议你去 leetcode 刷题的所以我上面先说了先入门一下数据结构与算法当你学习了这些基础的数据结构之后其实已经具备了刷题的能力了。

这里我说下你们找的书籍最好是有完整代码实现的因为有些书籍为了具有通用性或者严谨性是接纳 伪代码来实现的我不建议初学者用这类书籍因为容易一脸蒙蔽代码也欠好跑通验证所以如果你以为自己是普通人那么就找一本有完整代码的书籍来看吧然后乖乖把代码的代码敲打跑通起来。

五、刷题时的一些注意点

当你学完了链表、行列、栈、二叉树、哈希表等最基本的数据结构其实你就算入门了这个时候其实你已经具备了去 leetcode 刷题的能力了。不外在学习历程中特别是到了


本文关键词:谈,一谈,「,如何,学好,算法,」,来自,帅地,玩,鸭脖官网下载入口

本文来源:鸭脖官网进入-www.brjly.com