学习JavaScript数据结构与算法---前端进阶系列
学习建议
1.视频学习---认知
建议:在中国慕课上找“数据结构”相关的视频教程。中国大学MOOC
推荐清华大学、北京大学、浙江大学的教程,可先试看,然后根据自身的情况选择视频进行学习。
视频学习可以帮助我们对数据结构有基本的认知,比一开始就去看书,更容易坚持,并且印象也会更深刻。
因为时间的原因,有些课程可能已经关闭了,所以我在哔哩哔哩上找到“数据结构”(浙江大学)的视频教程跟着学习。同时,为了更好地对视频讲解的内容进行回顾,我在图书馆借了跟视频配套的课本,跟着学习。
数据结构-浙江大学
网上有很多推荐邓俊辉老师的视频,小伙伴们可以试着看看,但是我太菜了,看了几个小节之后,发现有点懵,等以后有机会再跟着邓老师学习吧。
清华大学-邓俊辉MOOC数据结构与算法全套
2.书籍
建议:
- 《学习JavaScript数据结构与算法》
- 《数据结构》主编 陈越
- 《大话数据结构》
- 《图解算法》
每种数据结构对应的视频教程看完后,一定要看相应的书籍,自己做笔记,多思考,多总结。
建议找视频教程中对应的教材进行学习,可以节省一些做笔记的时间。【因为这本书选用的语言是C,所以,在代码实现这块,我就会跳过】
同时,一定要看《学习JavaScript数据结构与算法》这本书,现在已经更新到第三版,全书也是用ES6进行编写,非常适合学习前端,只会JavaScript的朋友们。最重要的是,数据结构与算法用JS来编写的,真的太少啦,大家且看且珍惜吧。
辅助书籍:《大话数据结构》这本书还是很有趣的。
其实,视频和书籍的选择是很灵活的,一定要根据自身的情况,如果可以在图书馆借书,一定要多借几本(在网上找一些推荐的书籍),挑选出适合自己的。
3.练习
一定要做练习!一定要做练习!一定要做练习!
推荐:
- leetcode
- 牛客网上《剑指offer》
但是,相信大家一定不知道如何选择合适的题目。我是跟着【JavaScript版数据结构与算法---慕课网视频教程】做相应的练习。后面我会将每种数据结构、算法列出对应的练习题目。
做练习题能够帮助我们更好地认识每种数据结构,了解一些它的应用场景,帮助今后在遇到问题的时候能够选择合适的数据结构进行解决。
【题外话】
基础真的很重要很重要很重要!!!
前端也是需要学习数据结构与算法的,一方面,数据结构与算法可以提高我们的编程能力,正好也可以练习JS;另一方面,我们在找工作的过程中,这部分的内容也是会进行考察的;如果我们以后想要专攻技术,往全栈方向发展,这些知识都是基础。
我在学习数据结构与算法的时候,总是在痛苦、收获、想要放弃、再坚持一下中不断轮回,但如果坚持学,就会有收获!很难得的是,我竟然找到了高中时候做题的快乐,如果搞懂了某一个知识点,真的很有成就感!
会当临绝顶,一览众山小!希望攻克难题的小伙伴们,可以发出这样的感慨!
【Fighting】
我的目标:成为一位优秀的前端工程师,一名优雅的程序媛!!!
尽管在学习的过程中会遇到很多难题,但还好我对前端的热情依然不减,同时也有着强烈的求知欲和好奇心,既然决定把前端作为以后的职业,就要爱我所选,并且坚定地走下去!
前端路漫漫,但我看得到远方,我知道自己努力的方向,这就很幸福。每前进一步,就离自己的目标越近。
不积跬步无以至千里!
道阻且长,行则将至!
学习JavaScript数据结构与算法---前端进阶系列的更多相关文章
- 重读《学习JavaScript数据结构与算法-第三版》- 第6章 链表(一)
定场诗 伤情最是晚凉天,憔悴厮人不堪言: 邀酒摧肠三杯醉.寻香惊梦五更寒. 钗头凤斜卿有泪,荼蘼花了我无缘: 小楼寂寞新雨月.也难如钩也难圆. 前言 本章为重读<学习JavaScript数据结构 ...
- 重读《学习JavaScript数据结构与算法-第三版》- 第4章 栈
定场诗 金山竹影几千秋,云索高飞水自流: 万里长江飘玉带,一轮银月滚金球. 远自湖北三千里,近到江南十六州: 美景一时观不透,天缘有分画中游. 前言 本章是重读<学习JavaScript数据结构 ...
- 重读《学习JavaScript数据结构与算法-第三版》- 第5章 队列
定场诗 马瘦毛长蹄子肥,儿子偷爹不算贼,瞎大爷娶个瞎大奶奶,老两口过了多半辈,谁也没看见谁! 前言 本章为重读<学习JavaScript数据结构与算法-第三版>的系列文章,主要讲述队列数据 ...
- 重读《学习JavaScript数据结构与算法-第三版》-第2章 ECMAScript与TypeScript概述
定场诗 八月中秋白露,路上行人凄凉: 小桥流水桂花香,日夜千思万想. 心中不得宁静,清早览罢文章, 十年寒苦在书房,方显才高志广. 前言 洛伊安妮·格罗纳女士所著的<学习JavaScript数据 ...
- 重读《学习JavaScript数据结构与算法-第三版》- 第3章 数组(一)
定场诗 大将生来胆气豪,腰横秋水雁翎刀. 风吹鼍鼓山河动,电闪旌旗日月高. 天上麒麟原有种,穴中蝼蚁岂能逃. 太平待诏归来日,朕与先生解战袍. 此处应该有掌声... 前言 读<学习JavaScr ...
- 学习JavaScript数据结构与算法 (二)
学习JavaScript数据结构与算法 的笔记 包含第四章队列, 第五章链表 本人所有文章首发在博客园: http://www.cnblogs.com/zhangrunhao/ 04队列 实现基本队列 ...
- 学习JavaScript数据结构与算法 (一)
学习JavaScript数据结构与算法 的笔记, 包含一二三章 01基础 循环 斐波那契数列 var fibonaci = [1,1] for (var i = 2; i< 20;i++) { ...
- 学习Javascript数据结构与算法(第2版)笔记(1)
第 1 章 JavaScript简介 使用 Node.js 搭建 Web 服务器 npm install http-server -g http-server JavaScript 的类型有数字.字符 ...
- 学习JavaScript数据结构与算法 2/15
第一章 JavaScript简介 js不同于C/C++,C#,JAVA,不是强类型语言. 通常,代码质量可以用全局变量和函数的数量来考量(数量越多越糟).因此,尽可能避免使用全局变量. JS数据类型 ...
随机推荐
- 掩膜(mask)
1.掩膜(mask)的定义 用选定的图像,图形或物体,对处理的图像(全部或局部)进行遮挡,来控制图像处理的区域或处理过程.用于覆盖的特定图像或物体称为掩模或模板.光学图像处理中,掩模可以足胶片,滤光片 ...
- asp.net 的 web form 过时了吗
本文链接:https://blog.csdn.net/closurer/article/details/79526006web form 其实是一个超前的设计. 每个厂商都希望服务器端和客户端采用同样 ...
- Java多线程wait和notify协作,按序打印abc
有一个经典的多线程面试题:启三个线程,按序打印ABC 上代码: package cn.javaBase.study_thread1; class MyRunnable1 implements Runn ...
- 【正确使用vim编辑器的姿势】
"vi:可视化接口(Visual Interface) vim:是vi的增强版(vi iMprove) vi编辑器是所有Unix及Linux系统下标准的编辑器,他就相当于windows系统中 ...
- jquery实现点击显示,再点击隐藏
//点击a标签,轮流显示和隐藏<div id="timo" style="background-color:red;height:50px;width:50px;& ...
- 抽象类和final修饰符
抽象类和抽象方法的特点: 1.都通过abstract关键字来修饰. 2.抽象类不能实例化. 3.抽象类中可以有 0~多个抽象方法.(可以没有抽象方法) 4.抽象方法只有方法声明,没有方法实现.(没有方 ...
- Java - 集合 - Map
Map 1.Map实现类:HashMap.Hashtable.LinkedHashMap.TreeMap HashMap 新增元素/获取元素 1 void contextLoads() { 2 //声 ...
- Android App测试计划和设计测试矩阵
Android APP :日程管理APP 测试计划(Test Plan): 编号 测试时间 测试类型 测试计划 1. 5.1~5.5 单元测试 单元测试是由程序员自己来完成,程序员有责任编写功能代码, ...
- markdown pic
Markdown 图片 Markdown 图片语法格式如下:   开头一个感叹号 ! 接着一个方括 ...
- 【Vue路由系统详述】
目录 路由命名 路由参数 路由参数的实现原理 子路由 子路由之append 动态绑定属性 子路由之append升级版 子路由之非append 路由重定向 手动路由 路由钩子 在路径中去掉"# ...