Redis中List实现双链表

 更新时间:2023年06月08日 11:28:12   作者:藤椅不再坐着  
本文主要介绍了Redis中List实现双链表,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

概述:

Redis中的list类型与java中的LinkedList集合类似,可以看作是一个双向的链表结构,既可以支持正向的检索,也可以支持反向的检索

特征:(与LinkedList类似)

1.有序

2.元素可以重复

3.插入与删除一样快

4.查询速度一般(遍历所有节点来查询)

常用来储存一有序的数据,例如:朋友圈点赞列表,评论列表,等..........

List常见命令

1.Lpush key element.....:向列表左侧插入一个或多个元素

2.LPOP key :移除并返回列表左侧的第一个元素,没有则返回nil

3.RPUSH key element...:向列表右侧插入一个或多个元素

4.RPOP key :移除并返回列表左侧的第一个元素

5.LRANGE key star end:返回一段角标范围内的所有元素

6.BLPOP和BRPOP:与LPOP和RPOP类似,只不过在没有元素是等待指定时间,而不是直接返回nil

1.Lpush key element.....:向列表左侧插入一个或多个元素

(1)在命令行里面写入数据

(2)在图形工具查看数据(我们可以看到,在图形化界面的里面是是倒叙的,这是因为我们使用了头插法)

 2.LPOP key :移除并返回列表左侧的第一个元素,没有则返回nil

(1)在命令行里面写入数据

(2)在图形工具查看数据(我们可以看到,在图形化界面的里面是是倒叙的,这是因为我们使用了头插法)

3.RPUSH key element...:向列表右侧插入一个或多个元素

(1)在命令行里面写入数据

(2)在图形工具查看数据(我们可以看到,在图形化界面的里面是是倒叙的,这是因为我们使用了头插法)

4.RPOP key :移除并返回列表左侧的第一个元素,没有则返回nil

(1)在命令行里面写入数据

(2)在图形工具查看数据(我们可以看到,在图形化界面的里面是是倒叙的,这是因为我们使用了头插法)

5.LRANGE key star end:返回一段角标范围内的所有元素

(1)新添加数据

(2)在命令行里面写入数据

6.BLPOP和BRPOP:与LPOP和RPOP类似,只不过在没有元素是等待指定时间,而不是直接返回nil

(1)在命令行里面写入数据(代表了在100秒之内如果发现就执行操作,否则一直堵塞在这里)

(2)新开一个cmd写入数据

(3)效果

遗留下的问题:

如何用List结构模拟出一个栈?

--入口与出口在一起(Lpush与Lpop,Rpush与Rpop)

如何利用List结构模拟出一个队列?

--入口与出口不在一起(Lpush与Rpop,Rpush与Lpop)

如何利用List结构模拟一个阻塞队列?

--也是队列,即入口与出口不在一起(Lpush与BRpop,Rpush与BLpop)

--出队的时候采用(BRpop,BLpop)

到此这篇关于Redis中List实现双链表的文章就介绍到这了,更多相关Redis List双链表内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:

相关文章

  • Redis删除策略的三种方法及逐出算法

    Redis删除策略的三种方法及逐出算法

    这篇文章主要介绍了Redis删除策略的三种方法及逐出算法,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-08-08
  • 异步redis队列实现 数据入库的方法

    异步redis队列实现 数据入库的方法

    今天小编就为大家分享一篇异步redis队列实现 数据入库的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • Redis密码设置与访问限制实现方法

    Redis密码设置与访问限制实现方法

    这篇文章主要介绍了Redis密码设置与访问限制实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • Redis如何正确关闭和开启持久化

    Redis如何正确关闭和开启持久化

    本文主要介绍了Redis如何正确关闭和开启持久化,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • K8S部署Redis(单机、集群)的超详细步骤

    K8S部署Redis(单机、集群)的超详细步骤

    redis是一款基于BSD协议,开源的非关系型数据库(nosql数据库)这篇文章主要给大家介绍了关于K8S部署Redis(单机、集群)的超详细步骤,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2024-05-05
  • Redis中set类型实现交集并集差集

    Redis中set类型实现交集并集差集

    本文主要介绍了Redis中set类型实现交集并集差集,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • Redis中缓存穿透/击穿/雪崩问题和解决方法

    Redis中缓存穿透/击穿/雪崩问题和解决方法

    大家好,本篇文章主要讲的是Redis中缓存穿透/击穿/雪崩问题和解决方法,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下哦,方便下次浏览
    2021-12-12
  • Redis源码分析之set 和 sorted set 使用

    Redis源码分析之set 和 sorted set 使用

    本文介绍了Redis 中的 set 和 sorted set 使用源码实现分析,Redis 的 Set 是 String 类型的无序集合,集合成员是唯一的,sorted set有序集合和集合一样也是 string 类型元素的集合,对Redis set 和 sorted set使用相关知识感兴趣的朋友一起看看吧
    2022-03-03
  • redis实现删除list中特定索引的值

    redis实现删除list中特定索引的值

    这篇文章主要介绍了redis实现删除list中特定索引的值,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • Redis 存取 JSON 数据示例操作

    Redis 存取 JSON 数据示例操作

    JSON 是我们常用的数据类型,当我们需要在Redis中保存json数据时是怎么存放的呢?一般是用String或者Hash,但还是不太方便,无法灵活的操作json 数据,下面通过本文给大家介绍Redis存取JSON 数据示例操作,感兴趣的的朋友一起看看吧
    2024-02-02

最新评论