学习建议

1.视频学习---认知

建议:在中国慕课上找“数据结构”相关的视频教程。中国大学MOOC

推荐清华大学、北京大学、浙江大学的教程,可先试看,然后根据自身的情况选择视频进行学习。

视频学习可以帮助我们对数据结构有基本的认知,比一开始就去看书,更容易坚持,并且印象也会更深刻。

因为时间的原因,有些课程可能已经关闭了,所以我在哔哩哔哩上找到“数据结构”(浙江大学)的视频教程跟着学习。同时,为了更好地对视频讲解的内容进行回顾,我在图书馆借了跟视频配套的课本,跟着学习。
数据结构-浙江大学

网上有很多推荐邓俊辉老师的视频,小伙伴们可以试着看看,但是我太菜了,看了几个小节之后,发现有点懵,等以后有机会再跟着邓老师学习吧。
清华大学-邓俊辉MOOC数据结构与算法全套

2.书籍

建议:

  • 《学习JavaScript数据结构与算法》
  • 《数据结构》主编 陈越
  • 《大话数据结构》
  • 《图解算法》

每种数据结构对应的视频教程看完后,一定要看相应的书籍,自己做笔记,多思考,多总结。

建议找视频教程中对应的教材进行学习,可以节省一些做笔记的时间。【因为这本书选用的语言是C,所以,在代码实现这块,我就会跳过】

同时,一定要看《学习JavaScript数据结构与算法》这本书,现在已经更新到第三版,全书也是用ES6进行编写,非常适合学习前端,只会JavaScript的朋友们。最重要的是,数据结构与算法用JS来编写的,真的太少啦,大家且看且珍惜吧。

辅助书籍:《大话数据结构》这本书还是很有趣的。

其实,视频和书籍的选择是很灵活的,一定要根据自身的情况,如果可以在图书馆借书,一定要多借几本(在网上找一些推荐的书籍),挑选出适合自己的。

3.练习

一定要做练习!一定要做练习!一定要做练习!

推荐:

  • leetcode
  • 牛客网上《剑指offer》

但是,相信大家一定不知道如何选择合适的题目。我是跟着【JavaScript版数据结构与算法---慕课网视频教程】做相应的练习。后面我会将每种数据结构、算法列出对应的练习题目。

做练习题能够帮助我们更好地认识每种数据结构,了解一些它的应用场景,帮助今后在遇到问题的时候能够选择合适的数据结构进行解决。

【题外话】

基础真的很重要很重要很重要!!!

前端也是需要学习数据结构与算法的,一方面,数据结构与算法可以提高我们的编程能力,正好也可以练习JS;另一方面,我们在找工作的过程中,这部分的内容也是会进行考察的;如果我们以后想要专攻技术,往全栈方向发展,这些知识都是基础。

我在学习数据结构与算法的时候,总是在痛苦、收获、想要放弃、再坚持一下中不断轮回,但如果坚持学,就会有收获!很难得的是,我竟然找到了高中时候做题的快乐,如果搞懂了某一个知识点,真的很有成就感!

会当临绝顶,一览众山小!希望攻克难题的小伙伴们,可以发出这样的感慨!

【Fighting】

我的目标:成为一位优秀的前端工程师,一名优雅的程序媛!!!

尽管在学习的过程中会遇到很多难题,但还好我对前端的热情依然不减,同时也有着强烈的求知欲和好奇心,既然决定把前端作为以后的职业,就要爱我所选,并且坚定地走下去!

前端路漫漫,但我看得到远方,我知道自己努力的方向,这就很幸福。每前进一步,就离自己的目标越近。

不积跬步无以至千里!

道阻且长,行则将至!

学习JavaScript数据结构与算法---前端进阶系列的更多相关文章

  1. 重读《学习JavaScript数据结构与算法-第三版》- 第6章 链表(一)

    定场诗 伤情最是晚凉天,憔悴厮人不堪言: 邀酒摧肠三杯醉.寻香惊梦五更寒. 钗头凤斜卿有泪,荼蘼花了我无缘: 小楼寂寞新雨月.也难如钩也难圆. 前言 本章为重读<学习JavaScript数据结构 ...

  2. 重读《学习JavaScript数据结构与算法-第三版》- 第4章 栈

    定场诗 金山竹影几千秋,云索高飞水自流: 万里长江飘玉带,一轮银月滚金球. 远自湖北三千里,近到江南十六州: 美景一时观不透,天缘有分画中游. 前言 本章是重读<学习JavaScript数据结构 ...

  3. 重读《学习JavaScript数据结构与算法-第三版》- 第5章 队列

    定场诗 马瘦毛长蹄子肥,儿子偷爹不算贼,瞎大爷娶个瞎大奶奶,老两口过了多半辈,谁也没看见谁! 前言 本章为重读<学习JavaScript数据结构与算法-第三版>的系列文章,主要讲述队列数据 ...

  4. 重读《学习JavaScript数据结构与算法-第三版》-第2章 ECMAScript与TypeScript概述

    定场诗 八月中秋白露,路上行人凄凉: 小桥流水桂花香,日夜千思万想. 心中不得宁静,清早览罢文章, 十年寒苦在书房,方显才高志广. 前言 洛伊安妮·格罗纳女士所著的<学习JavaScript数据 ...

  5. 重读《学习JavaScript数据结构与算法-第三版》- 第3章 数组(一)

    定场诗 大将生来胆气豪,腰横秋水雁翎刀. 风吹鼍鼓山河动,电闪旌旗日月高. 天上麒麟原有种,穴中蝼蚁岂能逃. 太平待诏归来日,朕与先生解战袍. 此处应该有掌声... 前言 读<学习JavaScr ...

  6. 学习JavaScript数据结构与算法 (二)

    学习JavaScript数据结构与算法 的笔记 包含第四章队列, 第五章链表 本人所有文章首发在博客园: http://www.cnblogs.com/zhangrunhao/ 04队列 实现基本队列 ...

  7. 学习JavaScript数据结构与算法 (一)

    学习JavaScript数据结构与算法 的笔记, 包含一二三章 01基础 循环 斐波那契数列 var fibonaci = [1,1] for (var i = 2; i< 20;i++) { ...

  8. 学习Javascript数据结构与算法(第2版)笔记(1)

    第 1 章 JavaScript简介 使用 Node.js 搭建 Web 服务器 npm install http-server -g http-server JavaScript 的类型有数字.字符 ...

  9. 学习JavaScript数据结构与算法 2/15

    第一章 JavaScript简介 js不同于C/C++,C#,JAVA,不是强类型语言. 通常,代码质量可以用全局变量和函数的数量来考量(数量越多越糟).因此,尽可能避免使用全局变量. JS数据类型 ...

随机推荐

  1. java连接mysql数据库8.0以上版本过程中遇到的坑

    来自:https://blog.csdn.net/u013276277/article/details/80255468 首先,我居然不能用navicat客户端连接上mysql8.0数据库报1251错 ...

  2. jvm(6):JMM

    typora-root-url: ./ CPU多核并发缓存架构 JMM(Java线程内存模型)底层实现原理 基于CPU缓存模型建立的,屏蔽掉了底层不同计算机的区别. 所有的共享变量都存储在主内存.每条 ...

  3. 使用 ENUMMAP 替代序数索引

    import java.util.Arrays; import java.util.EnumMap; import java.util.HashSet; import java.util.Map; i ...

  4. lua 排序table.sort()用法

    table.sort(),它要求要排序的目标table的必须是从1到n连续的,即中间不能有nil.当两个数相等的时候,比较函数一定要返回false. 探究性质,我们做个试验: 1)新建文件sortte ...

  5. Mysql中的触发器【转】

    转载:https://www.cnblogs.com/chenpi/p/5130993.html 阅读目录 什么是触发器 特点及作用 例子:创建触发器,记录表的增.删.改操作记录 弊端 什么是触发器 ...

  6. deepin linux 安装之后 引导错误 出现 grub>

    deepin 安装之后 引导错误 ,,, 忙了一晚上 终于解决了 太辛苦了 不过明白了grub的工作原理也不亏,,,, 就是 整个过程满满的绝望 (哭 环境说明 华硕顽石4 笔记本 硬盘分区表GPT ...

  7. P1908 逆序对(归并排序)

    https://www.luogu.com.cn/problem/P1908 归并排序是用来求逆序对的 归并排序的思想就是分治 #include <bits/stdc++.h> using ...

  8. PHP无法获取.env文件设置的值

    EGPCS指代的是什么?     指的是可以从服务器配置和请求的信息中获取的信息,它包括了environment(环境).GET.POST.cookie.server,对应的全局数组:$_ENV.$_ ...

  9. jsp页面直接读取mysql数据库数据显示

    jsp页面直接读取mysql数据库数据显示: <%@page import="java.sql.ResultSet"%> <%@page import=" ...

  10. 7-8 Left-pad

    思路 注意读入和输出格式 如果用fgets读入的话会带上回车,输出的时候一定不要输出了双回车 并且此时的length也会比原始长度多了一,要注意长度比较,这里容易出错 代码 #include < ...