温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
我们来看这道题。这道题呢?问说A和link list有什么区别?这道题的难度指数呢?两颗星,薪水指数依然只有一颗星,差不多在1万到2万之间。这道题考的是什么东西呢?它考的是数据结构。呃呃,需要这道题资料的小伙伴们啊,右上角扫描我的呃助手的二维码,找他去要呃,我们来看答案。A list和link list啊,它本身都实现了类似接口,但是它的底层的实现的数据结构是不一样的,A list底层是用数组来实现的,嗯,咱们如果说没有学过数据结构的小伙伴啊,听这种题一般都会比较费劲,呃,我建议大家伙作为一个专业的程序员来讲,一定一定要好好的去了解数据结构和算法,这是重中之重,这也是你能够进大厂拿到更好薪水的最基本的所需需需要的东西啊,那个在咱们的课程里面呢,对设结构和算法也比较重视,大概前前后后组织了400个小时的课来讲这个东西,呃,所以在这儿呢,我没有办法给大家伙详细的展开,呃,不过呢,你只要稍微懂一点点这种底层的结构啊,数组啊,链表啊,应该就能够明白这道题。
01:24
那么对我来说呢,我稍微照顾一点咱们基础不太好的同学,A的底层是用数组实现的,一个数据,一个数据是挨着的,下面带索引的012345678好链表是什么呢?链表是构成的数据的链条,这是一个数据,诶,指向下一个数据,指向下一个数据,指向下一个数据,也就是说每一个节点呢,除了存储数据之外呢,还要存储指向下一个数据节点的指针。当然你了解了这两种不同的结构之后,你就应该知道它们之间的区别和细节了啊。呃,你比如说在插入数据的时候,哪个比较快呢?你想想看,往这插一个数据,你后半截的数据是不是得挪动啊,但是往链表里面插个数据呢,你往这插进来,把它这个原来这个指针打断,呃。
02:18
这个指针指向它啊,新插进来的节点的一个指针指向下面这个搞定,所以它速度非常快,所以你插入数据以及删除数据比较多的时候,应该考虑用link list列表,那么如果你呃,本身访问数据访问特别多,挨着牌的访问。啊,你说我访问第五个,你对对于数组来说,跨一下你数底下的这个这个编号是吧,012345题直接直接就跨越前面四个,直接就到第五个了,但是对于列表来说,你得从投节点开始,嗯。走一步一步一步一步才能访问到第五个,所以如果你访问数据访问的比较多,顺序访问访问的比较多,我告诉你用A,当然在这里面呢,我讲了很多很多的其他的一个细节,我觉得你呃读一下应该就大体明白了,基本上关注这三个点,插入,删除访问。
03:15
你好好想想,在插入的时候哪个更快,在删除的时候哪个更快,在访问的时候哪个更快,随机访问啊。OK,我们来看下一题。
我来说两句