温馨提示:文本由机器自动转译,部分词句存在误差,以视频为准
00:00
好,同学们,通过前面艰难的跋涉,我们终于完成了五大数据结构的。底层源码分析和理论介绍,通过前面的案例和讲解,我们也清楚在red台面上我们用的是这经典的五大数据类型,而底噪我们大家都清楚,咱们现在是不是也就明白了,SDS动态字符串、双向链表,压缩列表,哈希表、跳表,马上讲解,然后呢,整数集合等等这些我就不再一一道来,所以按照我们前面所说的是不是叫总分总,那么。老规矩。需要对我们这五大数据类型做一个简单的总结,含六和七两个版本。那么同学们请跟着我来。把最后这点拿下,整张就打完了。首先。基于RED6的物理编码对应表,那么来吧,按照六这个版本,我们说string,那么有in特嵌弱原声,OK,那么对于list是思想上是双端链表加压缩列表,当然这是它的编码映射,对应的思想是不是都叫一个数据类型叫quick list OK,好,对于我们的哈希言是z list加哈希,注意这是六啊,对于我们的set而言,是整数集合加哈希,那么对于我们的z set言是zip list加跳表,OK,所以你要明白你底子啊,操作一种数据类型,它的编码和数据结构是有多种类型的组合和配合的,所以red为什么快,它底子用的这些数据结构也是非常牛逼的,这是第一点,那么第二个。
01:51
我们来看一下六数据类型以及对应的底层数据结构相关的关系,每一个都给大家说清楚了,字符串,哈希列表、集合有序常用的经典的这五个,那么所以说如果你需要深入的了解这些的话,那么可以来阅读一下杨哥给大家所做过的这段文字性的整理,OK,基本上就是把每种数据结构,它的条件以及它对应的默认值,它的一些复杂度,算法复杂度都给同学们做了相应的文字整理,可以借鉴。
02:27
那么这是我们的六,OK,那么再来看我们对应的啊,它的数据结构的关系是这样的。在于我们的六而言,String就是动态字符串set整数集。哈希表加整数数组,这三个几乎都是压缩列表加跳表,双端链表和哈希表,这是六,那么对于我们的七,我们强调过这两个几乎不变,这三个无非就是从压缩列表变成了list派,但是在七这块尽量的淡化。那么所有。
03:03
我们把它单独罗列为quick list,你只需要记得这个里面砖的是。Z的替代品list pack就行,好,最终我们要明白right数据类型,它的数据结构的时间复杂度,以后你在编码和参考使用的时候,这张表也非常重要,哈希是最快O1跳表是O,录个2N双向链表,压缩列表和整数速度都会因为元素的越来越多是on,所以一般而言哈希最快,跳表次之,其他打平。那么所以说同学们这个就是给大家做的一个简单简洁相关的一个小总结,请同学们务必拿下这一章。面试过程当中非常非常的重要,经常会问你,你会用了,你知道它的底层数据结构是数吗?是什么吗?然后问了你是什么,马上就问你。这个东东你再解释一下,比如说什么叫z list,为什么有Z了又换成list pack,哎,希望各位同学能够把这张拿下来,在面试当中游刃有余,好,感谢各位同学的聆听,咱们跳表再见。
我来说两句