redis 的 list 是不能去重的 set 可以 但是 set 的操作不如 list 灵活 那能不能用 set 给 list 去重呢

2018-03-11 23:18:24 +08:00
 jakeyfly

比如数据读写全部用 list

读完一轮后 把这个 list 的数据全 pop 出来 然后装进 set 不是就去重了 然后再取出来 装回 list 只要在每次数据读取完后 进行这么一轮操作 是不是就又能去重 又能用 list 的特性?

6504 次点击
所在节点    问与答
8 条回复
changwei
2018-03-12 00:37:09 +08:00
你需要 sorted list
jakeyfly
2018-03-12 03:01:01 +08:00
@changwei 什么东西大佬
iConnect
2018-03-12 05:56:06 +08:00
主要看你要不要排序的功能
R18
2018-03-12 07:06:14 +08:00
那为什么不每次 push 之前都判断一下?
dcalsky
2018-03-12 09:23:57 +08:00
@R18 o(n) 不划算的
julyclyde
2018-03-12 13:17:48 +08:00
用 set 的话会丢失“顺序”
你需要 sorted list
jakeyfly
2018-03-12 14:27:13 +08:00
@julyclyde 不知道这是什么东西啊 搜出来的好像都不是
tianju
2018-04-18 10:50:47 +08:00
@jakeyfly 他们说的应该是 sort set ( zset ),以顺序作为 score,也可以用 list+set 的方式实现

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/437079

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX