当前位置:   article > 正文

《算法和数据结构》LeetCode 篇_数据结构与算法leetcode

数据结构与算法leetcode

前言

  "为什么算法这么难?而别人不觉得难”
  “为什么别人能想出来?而我却想不出来”
  “为什么即便我想得出来?也写不出来”
  我也曾迷茫,我也曾失落,但是每当通过自己的意念,理解了一个新的算法以后,之前熬过的苦,瞬间烟消云散,带给我的只有无尽的快乐。
  为什么金字塔尖的人,寥寥无几,凤毛麟角,就是因为他们能,忍常人所不能忍,吃常人所不能吃的苦,才得以成就大业!天下无易成之业,亦无不可成之业,各守乃业则业无不成。

LeetCode算法学习路线


完整版视频地址

  首先让我们看下,我们接下来这段时间,我们需要学习的内容,主要有:

专栏定位适宜人群
「 光天化日学C语言 」「 入门 」没有任何语言基础
「 LeetCode零基础指南 」「 初级 」零基础快速上手力扣
「 C语言入门100例 」「 中级 」零基础持续C语言练习教程
「 算法零基础100讲 」「 高级 」零基础持续算法练习教程
「 画解数据结构 」「 高级 」「 推荐 」 数据结构动图教程
「 算法进阶50讲 」「 资深 」进阶持续算法练习教程
「 LeetCode算法题集汇总 」「 资深 」全面的力扣算法题练习集锦
「 夜深人静写算法 」「 资级 」竞赛高端算法集锦

一、语言基础

1、Hello World

  想上手一门语言,第一步一定是 Hello World。先不要急着配环境,如若环境配了几个时辰,可能起初的雄心壮志,就被配环境的过程消磨殆尽,更加不要谈日后的丰功伟业了。
  要成大事就必争朝夕,让我们直接进入实战。

2、直接实战

  我们直接在力扣上,进行第一段代码的编写,通过这道题,来了解编码的流程,就算你是算法零基础
想必也能看懂。(題目鏈接)
  题目要求我们不要用加号,实现两个数的加法操作,你让我不要用,那我就偏要用,我就是要逆天而行。看!就是这么简单!让我们来复盘一下。

3、及时复盘

  题目要求返回两个整数的和,并且要求不能用 加号,那如果我用了会怎么样,答案是并不会怎么样。因为平台不会对代码做语法分析,只是调用了你的函数,提供一些输入数据,如果输出数据和它给定的相同,就算通过。
  换言之,作为你接触算法的第一道题,其实这些条件,都无所谓,能过就行,对于新人来说,把问题过掉比问题本身更重要,题数的增加是信心的增加。信心比什么都重要,有了信心你才能继续往下走,只要你能往下推进,你就能继续学习,继续学习你迟早会学到相应的算法。
  好了,过了这题以后,把这道题放入你的重刷列表,等你对算法有一定理解以后,再来用题目要求的方法来过掉它。

4、坚持下去

  仅仅做了这一道题是远远不够的,如果不能坚持学习,那么一切美好的愿景都只是海市蜃楼遥不可及。
  现如今,经济飞速发展,我们要知道 “不进则退,慢进也是退” 的道理。只有当你采取快速高效的行动之后,才能够在残酷的竞争中,拥有自己的一席之地!
  有志者事竟成,破釜沉舟,百二秦关终属楚!
  苦心人天不负,卧薪尝胆,三千越甲可吞吴!
  始终相信 长风破浪会有时,直挂云帆济沧海!

5、养成习惯

  单纯学习语言未免太过枯燥乏味,所以建议一边学习一遍刷题,养成每天刷题的习惯,在刷题的过程中巩固语法,每过一个题相当于是一次正反馈,能够让你在刷题旅途中酣畅淋漓,从而更好的保证你一直坚持下去,在没有任何算法基础的情况下,可以按照我提供的专栏来刷题,这也是上上个视频提到的 九日集训 的完整教材,主要有以下几个内容:

  这个专栏主要讲解了一些 LeetCode 刷题时的一些难点和要点,主要分为以下几个章节,并且会持续补充一些方法论的文章。文章有试读,可以简单先看一看试读文章。

推荐阅读
相关标签