首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
redis
订阅
ice001
更多收藏集
微信扫码分享
微信
新浪微博
QQ
7篇文章 · 0订阅
面试竟被问到Redis事务,触及知识盲区,脸都绿了
前几天有读者说自己面试被问到Redis的事务,虽然不常用,但是面试竟然被问到,平时自己没有注意Redis的事务这一块,面试的时候被问到非常不好受。 虽然,这位读者面试最后算是过了,但是薪资方面没有拿到自己理想的薪资。 其实这个也是正常的,一般面试被问到烂大街的,谁还问你啊,专门…
一文彻底搞懂跳表的各种时间复杂度、适用场景以及实现原理
跳表是一种神奇的数据结构,因为几乎所有版本的大学本科教材上都没有跳表这种数据结构,而且神书《算法导论》、《算法第四版》这两本书中也没有介绍跳表。但是跳表插入、删除、查找元素的时间复杂度跟红黑树都是一样量级的,时间复杂度都是O(logn),而且跳表有一个特性是红黑树无法匹敌的(具…
深度剖析:Redis分布式锁到底安全吗?看完这篇文章彻底懂了!
那基于Zookeeper实现的分布式锁,会有问题吗?与Redis分布式锁有何差异?这篇文章也告诉你答案。
以后有面试官问你跳跃表,你就把这篇文章扔给他
一种很简单的方法应该就是采用数组了,在查找方面,用数组存储的话,采用二分法可以在 O(logn) 的时间里找到指定的元素,不过数组在插入、删除这些操作中比较不友好,找到目标位置所需时间为 O(logn) ,进行插入和删除这个动作所需的时间复杂度为 O(n) ,因为都需要移动移动…
Redis 为什么用跳表而不用平衡树?
本文是《Redis 内部数据结构详解》系列的第六篇。在本文中,我们围绕一个 Redis 的内部数据结构——skiplist 展开讨论。 Redis 里面使用 skiplist 是为了实现 sorted set 这种对外的数据结构。sorted set 提供的操作非常丰富,可以满足非常多的应用场景。…
深入理解Redis跳跃表的基本实现和特性
在这里我们先回忆一下普通链表的时间复杂度,可以看到除了 look up 操作是 $O(n)$ 的,其他操作都是 $O(1)$ 的时间复杂度。也就是说你需要随机访问里面的任何一个元素的话,它的时间复杂度平均值是 $O(n)$ 的,这也就是链表它的问题所在。从这里可以看到并没有所谓…
Redis 的底层数据结构(跳跃表)
跳跃表(SkipList)这种数据结构使用空间换时间的策略,通过给链表建立多层索引来加快搜索效率,我们先介绍跳跃表的基本理论,再来看看 redis 中的实现情况。 这是一条带哨兵的双端链表,大部分场景下的链表都是这种结构,它的好处是,无论是头插法还是尾插法,插入操作都是常量级别…