算法和数据结构导论视频文稿
这节课咱们开始讲一个全新的东西,这个东西比较奇怪,它不像我们之前写过的代码那样,或者说那么难,那么容易懂,它是其实有点难的东西,但是可能我们学这个的话会有很多用,有什么用呢,这个东西来源自于我很久之前在知乎上看到一篇回答,他说面试的时候,对吧,作为一个程序员,或者说作为一个前端开发程序员,你在面试的时候需要具备什么样的知识,有很多回答,比如说你要属于什么 r j query啊,什么什么这些东西,但是最令我感到触动的并不是说我们要知道这个东西,而是有个回答他真的触动了我,这个回答是什么呢,他就这个回答的人呢,是一个面试官,他说他在面试一个应聘的人的时候,他就问三个问题,第一个问题,栈和队列的区别是什么,第二,TCPIP协议和HTTP协议是什么,第三,冒泡排序和归并排序的区别,你可能会想为什么要问,你可能会想为什么要问这三个问题,我会写代码不就行了吗,其实不是的,在这三个问题里面呢,其实包含了我们在计算机里面的三大块儿,栈和队列呢,这个是计算机这门专业,或者说,计算机在大学里面的这门专业学的一个东西叫数据结构,数据结构,那么TCPIP协议和HTTP协议,大家虽然说现在可能不知道,但是也应该听说过数据结构和算法导论,他比如说之前网上不了了,对吧,就会有人来维修,维修的时候他就会去搞一些什么协议,这些东西你可能看不懂,但是你应该也有稍微接触过,这一块呢,属于计算机网络这部分的,然后第三部分,冒泡排序和归并排序的区别,它们俩是属于另外一块儿,叫做算法,这三个东西对吧,看起来很牛逼,但是很其实,这三个问题看起来非常的难,但是呢,都是这三门对吧,专业课里面最基础的一部分,那么我知道我们在很多人在学习编程的时候,并不是所谓的科班出身,科班,那什么叫科班呢,科班就是说你是在本科里面受过专业的一个计算机专业的培训,或者说这样的学习,那计算机专业的学习它的重点在于哪里呢,我们在学编程,再学,在学前端的时候,跟他们的差别到底在哪儿呢,其实并不是说我们的框架用的没他们好,或者说我们的语言没有他们的熟,因为我们经过学习这些都可以弥补的,而且呢,网上有很多很多免费的资源,但是最大的区别在于他们系统地学习过这个数据结构、计算机网络和算法这三门课程,这些也是很多人在后来,对吧,本科不是计算机专业的,后来他们学习编程的时候会遇到的一个非常大的一个问题,框架,你会发现,或许你使用过很多框架,你会发现,这些框架你都会使用了,而且你毫无疑问的是你会使用,别人也可以学会,但是什么样才能让你屹立不倒,或者说能让你达到一个更高的一个水平呢,那么我认为,就是这三门计算机的专业课,数据结构,计算机网络和算法,那么本节的课程呢,主要是针对于算法和数据结构,对吧,当然我画反了,刚才那计算机网络呢,在我们的no de JS里面,那个课程里边儿是会有的,为什么,因为我们的课是不会说让让你在天马行空的去讲一些知识,我们会结合一些实际的问题去解决它,note JS呢,他作为后端的语言,对吧,他当然要使用计算机网络啦,要使用网络就得了解TCPIP协议和HTTP协议两个东西,那么再来再有一个问题,这个数据结构和算法是什么,应该怎么学习好,这就是咱们这节课导论对吧,第一节课要说明的一些问题,首先我们看这一句话,这是非常简单一句话,对吧,数据结构是计算机的基础,算法是计算机的科学,什么意思呢,我们接下来解释一下,首先第一个问题,你还记得HTML吗,HTML是我们对吧,每一个前端开发人员都会学的一个东西,我们来简单的回忆一下,简单的回忆一下HTML是怎么样的呢数据结构和算法导论,它是比如说你的head里面,Head对吧,然后开标签B标签,那里面会有别的标签,比如说,对吧,这个head像一个袋子,里面装了很多东西,但是呢,我们更加习惯,或者说在我的HTML的里面呢,给大家解释了一下,HTML像是一个树结构,树是怎么样的呢,大家现实中生活的数对吧,一个树干,然后分了很多树枝,对吧,树枝呢,又有很多树叶形成一个树的结构,那么如果我们用一种更加数学的方式,对吧数据结构和算法导论-【数据结构 JavaScript版】- web前端开发精品课程【红点工场】,更加科学的方式表示他就是这样的一个跟它有很多个干,对吧,这是一个干第二层是干这事跟,这是干,然后呢,下面有很多很多的树叶