《Redis使用手册之有序集合》

《Redis使用手册之有序集合》

目录

      • **《Redis使用手册之有序集合》**
      • **ZADD:添加或更新成员**
      • **ZREM:移除指定的成员**
      • **ZSCORE:获取成员的分值**
      • **ZINCRBY:对成员的分值执行自增或自减操作**
      • **ZCARD:获取有序集合的大小**
      • **ZRANK、ZREVRANK:获取成员在有序集合中的排名**
      • **ZRANGE、ZREVRANGE:获取指定索引范围内的成员**
      • **ZRANGEBYSCORE、ZREVRANGEBYSCORE:获取指定分值范围内的成员**
      • **ZCOUNT:统计指定分值范围内的成员数量**
      • **ZREMRANGEBYRANK:移除指定排名范围内的成员**
      • **ZREMRANGEBYSCORE:移除指定分值范围内的成员**
      • **ZUNIONSTORE、ZINTERSTORE:有序集合的并集运算和交集运算**
      • **ZRANGEBYLEX、ZREVRANGEBYLEX:返回指定字典序范围内的成员**
      • **ZLEXCOUNT:统计位于字典序指定范围内的成员数量**
      • **ZREMRANGEBYLEX:移除位于字典序指定范围内的成员**
      • **ZPOPMAX、ZPOPMIN:弹出分值最高和最低的成员**
      • **BZPOPMAX、BZPOPMIN:阻塞式最大/最小元素弹出操作**

ZADD:添加或更新成员

  • 127.0.0.1:6379> zadd salary 3500 “patty” 4000 “jack” 5000 “matty” 6000 “tom”
    (integer) 4
    127.0.0.1:6379> zadd salary 2000 “tom”
    (integer) 0

    ZADD:添加或更新成员 通过使用ZADD命令,用户可以向有序集合添加一个或多个新成员

    ZADD sorted_set score member [score member …]

    指定要执行的操作 ZADD sorted_set [XX][NX] score member [score member …]

    • 在给定XX选项的情况下,ZADD命令只会对给定成员当中已经存在有序集合的成员更新,而不会向有序集合添加任何新成员。

    • 在给定NX选项的情况下,ZADD命令只会向有序集合添加新成员,而不会对已有的成员进行任何更新。

    ZADD:添加或更新成员通过使用ZADD命令,用户可以向有序集合添加一个或多个新成员:

ZREM:移除指定的成员

  • 127.0.0.1:6379> zrem salary tom
    (integer) 1
    127.0.0.1:6379> zrem salary goo
    (integer) 0

    ZREM:移除指定的成员 通过使用ZREM命令,用户可以从有序集合中移除指定一个或多个成员以及与这些成员相关联的分值

    ZREM sorted_set member [member …]

    如果用户给定的某个成员并不存在于有序集合中,那么ZREM将自动忽略该成员。

    ZREM:移除指定的成员

ZSCORE:获取成员的分值

  • 127.0.0.1:6379> zscore salary matty
    “5000”

    ZSCORE:获取成员的分值 ZCORE sorted_set member

    ZSCORE:获取成员的分值

ZINCRBY:对成员的分值执行自增或自减操作

  • 127.0.0.1:6379> zincrby salary 1000 matty
    “6000”
    127.0.0.1:6379> zincrby salary -1000 matty
    “5000”
    127.0.0.1:6379> zincrby salary 1000 ha
    “1000”
    127.0.0.1:6379> zincrby salary1 1000 a
    “1000”

    ZINCRBY:对成员的分值执行自增或自减操作

    ZINCRBY sorted_set increment member

    ZINCRBY命令在执行完自增操作之后,将返回给定成员当前的分值。

    执行自减操作,可以将一个负数增量传递给ZINCRBY命令,从而达到对分值执行自减操作的目的。

    处理不存在的键或者不存在的成员,ZINCRBY命令将直接把给定的成员添加到有序集合中,并把给定的增量设置为该成员的分值,效果相当于执行ZADD命令。

    如果对不存在的有序集合执行ZINCRBY命令,命令将会创建有序集合,并把分值添加到有序集合中。

    ZINCRBY:对成员的分值执行自增或自减操作

ZCARD:获取有序集合的大小

  • 127.0.0.1:6379> zcard salary
    (integer) 4
    127.0.0.1:6379> zcard salary1
    (integer) 1

    ZCARD:获取有序集合的大小 ZCARD sorted_set 如果用户给定的有序集合并不存在,那么ZCARD命令将返回0作为结果。

    ZCARD:获取有序集合的大小

ZRANK、ZREVRANK:获取成员在有序集合中的排名

  • 127.0.0.1:6379> zrank salary matty
    (integer) 3
    127.0.0.1:6379> zrank salary patty
    (integer) 1
    127.0.0.1:6379> zrevrank salary matty
    (integer) 0
    127.0.0.1:6379> zrevrank salary patty
    (integer) 2

    ZRANK、ZREVRANK:获取成员在有序集合中的排名

    升序排名 ZRANK sorted_set member

    降序排名 ZREVRANK sorted_set member

    ZRANK、ZREVRANK:获取成员在有序集合中的排名

ZRANGE、ZREVRANGE:获取指定索引范围内的成员

  • 127.0.0.1:6379> zrange salary 0 -1

    “ha”

    “patty”

    “jack”

    “matty”
    127.0.0.1:6379> zrevrange salary 0 -1

    “matty”

    “jack”

    “patty”

    “ha”
    127.0.0.1:6379> zrange salary 0 -1 withscores

    “ha”

    “1000”

    “patty”

    “3500”

    “jack”

    “4000”

    “matty”

    “5000”

    ZRANGE、ZREVRANGE:获取指定索引范围内的成员

    通过ZRANGE命令和ZREVRANGE命令,用户可以升序排列或者降序排列的方式,从有序集合中获取指定索引范围内的成员: ZRANGE sorted_set start end

    ZREVRANGE sorted_set start end

    使用负数索引,与LRANGE命令类似,ZRANGE命令和ZREVRANGE命令除了可以接收正数索引之外,还可以接收负数索引。

    获取成员及其分值 给定选项 [WITHSCORES]

    ZRANGE sorted_set start end [WITHSCORES]

    ZREVRANGE sorted_set start end [WITHSCORES]

    ZRANGE、ZREVRANGE:获取指定索引范围内的成员

ZRANGEBYSCORE、ZREVRANGEBYSCORE:获取指定分值范围内的成员

  • 127.0.0.1:6379> zrangebyscore salary 2000 5000

    “patty”

    “jack”

    “matty”
    127.0.0.1:6379> zrevrangebyscore salary 5000 2000

    “matty”

    “jack”

    “patty”

    127.0.0.1:6379> zrangebyscore salary 2000 5000 withscores

    “patty”

    “3500”

    “jack”

    “4000”

    “matty”

    “5000”
    127.0.0.1:6379> zrevrangebyscore salary 5000 2000 withscores

    “matty”

    “5000”

    “jack”

    “4000”

    “patty”

    “3500”

    127.0.0.1:6379> zrangebyscore salary 2000 5000 limit 0 1

    “patty”
    127.0.0.1:6379> zrevrangebyscore salary 5000 2000 limit 1 2

    “jack”

    “patty”
    127.0.0.1:6379> zrangebyscore salary (2000 (5000 withscores

    “patty”

    “3500”

    “jack”

    “4000”
    127.0.0.1:6379> zrangebyscore salary 2000 (5000 withscores

    “patty”

    “3500”

    “jack”

    “4000”
    127.0.0.1:6379> zrangebyscore salary (2000 5000 withscores

    “patty”

    “3500”

    “jack”

    “4000”

    “matty”

    “5000”

    127.0.0.1:6379> zrangebyscore salary -inf 5000 withscores

    “ha”

    “1000”

    “patty”

    “3500”

    “jack”

    “4000”

    “matty”

    “5000”
    127.0.0.1:6379> zrangebyscore salary -inf +inf withscores

    “ha”

    “1000”

    “patty”

    “3500”

    “jack”

    “4000”

    “matty”

    “5000”

    ZRANGEBYSCORE、ZREVRANGEBYSCORE:获取指定分值范围内的成员

    ZRANGEBYSCORE sorted_set min max

    ZREVRANGEBYSCORE sorted_set max min

    命令的min参数和max参数分别用于指定用户想要获取的成员的最小分值和最大分值。

    获取成员及其分值

    ZANGEBYSCORE sorted_set min max [WITHSCORES]

    ZREVRANGEBYSCORE sorted_set max min [WITHSCORES]

    限制命令返回成员数量,LIMIT选项来限制命令返回的成员数量:

    ZRANGEBYSCORE sorted_set min max [LIMIT offset count]

    ZREVRANGEBYSCORE sorted_set max min [LIMIT offset count]

    offset如果为0则不需要跳过成员,如果为n则需要跳过n个成员。

    • 使用功能开区间分值范围 在默认情况下ZRANGEBYSCORE命令和ZREVRANGEBYSCORE命令接受的分值范围,用户给定的最大值最小值的成员也会被包含在结果当中。
    • 如果用户想要定义开区间需要给定分值范围时,在分值参数前加上一个单括号 “(”,这样,给定分值的成员就不会包含在返回结果中。
    • 使用无限值作为范围 ZRANGEBYSCORE sorted_set -inf +inf WITHSCORES +inf 表示无穷大 -inf 表示无穷小

    ZRANGEBYSCORE、ZREVRANGEBYSCORE:获取指定分值范围内的成员

ZCOUNT:统计指定分值范围内的成员数量

  • 127.0.0.1:6379> zcount salary 2000 5000
    (integer) 3
    127.0.0.1:6379> zcount salary -inf 5000
    (integer) 4
    127.0.0.1:6379> zcount salary (1000 5000
    (integer) 3

    ZCOUNT:统计指定分值范围内的成员数量

    ZOUNT sorted_set min max

    分值范围格式和ZRANGEBYSCORE命令接受的分值范围格式完全相同。

    ZCOUNT:统计指定分值范围内的成员数量

ZREMRANGEBYRANK:移除指定排名范围内的成员

  • 127.0.0.1:6379> zremrangebyrank salary 0 3
    (integer) 4

    ZREMRANGEBYRANK:移除指定排名范围内的成员

    ZREMRANGEBYRANK sorted_set start end 与Redis的其他很多范围型命令一样,ZREMRANGEBYRANK命令接受的也是一个闭区间范围,也就是说,排名为start和end的成员也将被移除。 使用负数排名 ZREMRANGEBYRANK salary -3 -1

    ZREMRANGEBYRANK:移除指定排名范围内的成员ZREMRANGEBYRANK命令可以从升序排列的有序集合中移除位于指定排名范围内的成员,然后返回被移除成员的数量:

ZREMRANGEBYSCORE:移除指定分值范围内的成员

  • 127.0.0.1:6379> zrangebyscore salary -inf +inf withscores

​ “aa”

​ “1000”

​ “bb”

​ “2000”

​ “cc”

​ “3000”

​ “dd”

​ “4000”

​ “ff”

​ “5000”

​ “gg”

​ “6000”

  • 127.0.0.1:6379> zremrangebyscore salary 2000 3000
    (integer) 2

    127.0.0.1:6379> zrangebyscore salary -inf +inf withscores

    “aa”

    “1000”

    “dd”

    “4000”

    “ff”

    “5000”

    “gg”

    “6000”

    ZREMRANGEBYSCORE:移除指定分值范围内的成员

    ZREMRANGEBYSCORE sorted_set min max ZREMRANGEBYSCORE

    命令接受的分值范围与ZRANGEBYSCORE命令和ZCOUNT命令接受的分值范围一样,都默认为闭区间分值范围,但用户可以使用(符号定义闭区间,或者使用+inf和-inf表示正无限分值或负无限分值。

    ZREMRANGEBYSCORE:移除指定分值范围内的成员

ZUNIONSTORE、ZINTERSTORE:有序集合的并集运算和交集运算

  • 127.0.0.1:6379> zadd sorted_set1 1 a 1 b 1 c
    (integer) 3
    127.0.0.1:6379> zadd sorted_set2 2 c 2 d 2 e
    (integer) 3

    127.0.0.1:6379> zunionstore union-result-1 2 sorted_set1 sorted_set2
    (integer) 5127.0.0.1:6379> zrangebyscore union-result-1 -inf +inf withscores

    “a”

    “1”

    “b”

    “1”

    “d”

    “2”

    “e”

    “2”

    “c”

    “3”

    127.0.0.1:6379> zinterstore inter-result-1 2 sorted_set1 sorted_set2
    (integer) 1
    127.0.0.1:6379> zrangebyscore inter-result-1 -inf +inf

    “c”

    127.0.0.1:6379> zadd ss1 1 a
    (integer) 1
    127.0.0.1:6379> zadd ss2 2 a
    (integer) 1
    127.0.0.1:6379> zadd ss3 5 a
    (integer) 1

    127.0.0.1:6379> zinterstore agg-sum 3 ss1 ss2 ss3 aggregate sum
    (integer) 1
    127.0.0.1:6379> zrange agg-sum 0 -1 withscores

    “a”

    “8”
    127.0.0.1:6379> zinterstore agg-min 3 ss1 ss2 ss3 aggregate min
    (integer) 1
    127.0.0.1:6379> zrange agg-min 0 -1 withscores

    “a”

    “1”
    127.0.0.1:6379> zinterstore agg-max 3 ss1 ss2 ss3 aggregate max
    (integer) 1
    127.0.0.1:6379> zrange agg-max 0 -1 withscores

    “a”

    “5”

    127.0.0.1:6379> zadd wss1 2 a
    (integer) 1
    127.0.0.1:6379> zadd wss2 4 b
    (integer) 1
    127.0.0.1:6379> zadd wss3 3 c
    (integer) 1
    127.0.0.1:6379> zunionstore weight-result 3 wss1 wss2 wss3 weights 3 5 1
    (integer) 3
    127.0.0.1:6379> zrange weight-result 0 -1 withscores

    “c”

    “3”

    “a”

    “6”

    “b”

    “20”

    ZUNIONSTORE、ZINTERSTORE:有序集合的并集运算和交集运算

    ZUNIONSTORE destination numbers sorted_set [sorted_set …]

    ZINTERSTORE destination numbers sorted_set [sorted_set]

    指定聚合函数 Redis为ZUNIONSTORE命令和ZINTERSTORE命令提供了可选的AGGREGATE选项,通过这个选项,用户可以决定使用哪个聚合函数来计算结果有序集合成员的分值:

    ZUNIONSTORE destination numbers sorted_set [sorted_set …] [AGGREGATE SUM|MIN|MAX]

    ZINTERSTORE destination numbers sorted_set [sorted_set …] [AGGREGATE SUM|MIN|MAX]

    在没有显示地使用AGGREGATE选项指定聚合函数的情况下,ZUNIONSTORE和ZINTERSTORE默认使用SUM作为聚合函数。

    设置权重 WEIGHTS 参数

    ZUNIONSTORE destination numbers sorted_set [sorted_set …] [WEIGHTS weight [weight …]]

    ZINTERSTORE destination numbers sorted_set [sorted_set …] [WEIGHTS weight [weight …]]

    在使用WEIGHTS选项时,用户需要为每个给定的有序集合分别设置一个权重,命令会将这个权重与成员的分值相乘,得出成员的新分值,然后进行聚合计算;

    如果不想改变某个有序集合的分值,只需要将那个有序集合的权重设置为1即可。

    使用集合作为输入 ZUNIONSTORE和ZINTERSTORE除了可以使用有序集合作为输入之外,还可以使用集合作为输入:

    在默认情况下,这两个命令将把给定集合看作所有成员的分值都为1的有序集合来进行计算。

    ZUNIONSTORE、ZINTERSTORE:有序集合的并集运算和交集运算

ZRANGEBYLEX、ZREVRANGEBYLEX:返回指定字典序范围内的成员

127.0.0.1:6379> sadd alpha a b c
(integer) 3
127.0.0.1:6379> zadd another-alpha 2 c 5 d 7 e
(integer) 3
127.0.0.1:6379> zunionstore mixed 2 alpha another-alpha
(integer) 5

127.0.0.1:6379> zrange mixed 0 -1 withscores

“a”

“1”

“b”

“1”

“c”

“3”

“d”

“5”

“e”

“7”

127.0.0.1:6379> zadd words 0 address 0 after 0 apple 0 bamboo 0 bear 0 book 0 candy 0 cat 0 client
(integer) 9
127.0.0.1:6379> zrangebylex words [a (b

“address”

“after”

“apple”
127.0.0.1:6379> zrangebylex words - (c

“address”

“after”

“apple”

“bamboo”

“bear”

“book”

127.0.0.1:6379> zrevrangebylex words (c [a

“book”

“bear”

“bamboo”

“apple”

“after”

“address”

ZRANGEBYLEX、ZREVRANGEBYLEX:返回指定字典范围内的成员

ZRANGEBYLEX sorted_set min max

命令的min参数和max参数用于指定用户想要获取的字典序范围。

带有[符号的值表示在结果中包含给定值具有同等字典序大小的成员。

带有(符号的值表示在结果中不包含与给定值具有同等字典序大小的成员。 - 加号+表示无穷大 - 减号 - 表示无穷小 ZREVRANGEBYLEX命令式逆序版的ZRANGEBYLEX命令,它会以逆字典序的方式返回指定范围内的成员

ZREVRANGEBYLEX sorted_set max min

限制命令返回的成员数量

127.0.0.1:6379> zrangebylex words [b + limit 0 1

“bamboo”

ZRANGEBYLEX sorted_set min max [LIMIT offset count]

ZREVRANGEBYLEX sorted_set max min [LIMIT offset count]

ZRANGEBYLEX、ZREVRANGEBYLEX:返回指定字典序范围内的成员

ZLEXCOUNT:统计位于字典序指定范围内的成员数量

  • 127.0.0.1:6379> zlexcount words [a (b
    (integer) 3
    127.0.0.1:6379> zlexcount words [b +
    (integer) 6

    ZLEXCOUNT:统计位于字典序指定范围内的成员数量。

    ZLEXCOUNT sorted_set min max

    ZLEXCOUNT命令的min参数和max参数的格式与ZRANGEBYLEX命令接受的min参数和max参数的格式完全相同。

    ZLEXCOUNT:统计位于字典序指定范围内的成员数量

ZREMRANGEBYLEX:移除位于字典序指定范围内的成员

  • 127.0.0.1:6379> zremrangebylex words [b (c
    (integer) 3

    ZREMRANGEBYLEX:移除位于字典序指定范围内的成员

    ZREMRANGEBYLEX sorted_set min max

    这个命令的min参数和max参数的格式与ZRANGEBYLEX命令以及ZLEXCOUNT命令接受的min参数和max参数的格式完全相同。

    ZREMRANGEBYLEX:移除位于字典序指定范围内的成员

ZPOPMAX、ZPOPMIN:弹出分值最高和最低的成员

  • 127.0.0.1:6379> zadd salary 1000 zs 2000 lisi 3000 wangwu 5000 maliu
    (integer) 4
    127.0.0.1:6379> zpopmax salary

    “gg”

    “6000”
    127.0.0.1:6379> zpopmin salary

    “aa”

    “1000”

    127.0.0.1:6379> zrange salary 0 -1 withscores

    “zs”

    “1000”

    “lisi”

    “2000”

    “wangwu”

    “3000”

    “dd”

    “4000”

    “ff”

    “5000”

    “maliu”

    “5000”

    127.0.0.1:6379> zpopmax salary 2

    “maliu”

    “5000”

    “ff”

    “5000”

    ZPOPMAX、ZPOPMIN:弹出分值最高和最低的成员

    ZPOPMAX sorted_set [count] ZPOPMIN sorted_set [count]

    其中被移除元素的数量可以通过可选的count参数来指定。

    如果用户没有显示地给定count参数,那么命令默认只会移除一个元素。

    ZPOPMAX、ZPOPMIN:弹出分值最高和最低的成员ZPOPMAX和ZPOPMIN是Redis 5.0版本新添加的两个命令,分别用于移除并返回有序集合中分值最大和最小的N个元素:

BZPOPMAX、BZPOPMIN:阻塞式最大/最小元素弹出操作

  • 127.0.0.1:6379> bzpopmax ss1 ss2 ss3 10

    “ss1”

    “a”

    “1”
    127.0.0.1:6379> bzpopmax ss1 ss2 ss3 10

    “ss2”

    “a”

    “2”
    127.0.0.1:6379> bzpopmax ss1 ss2 ss3 10

    “ss3”

    “a”

    “5”
    127.0.0.1:6379> bzpopmax ss1 ss2 ss3 10
    (nil)
    (10.05s)

    BZPOPMAX、BZPOPMIN:阻塞式最大/最小元素弹出操作。

    BZPOPMAX命令和BZPOPMIN命令分别是ZPOPMAX命令以及ZPOPMIN命令的阻塞版本,这两个阻塞命令都接受任意多个有序集合和一个秒级精度的超时时限作为参数:

    BZPOPMAX sorted_set [sorted_set …] timeout

    BZPOPMIN sorted_set [sorted_set …] timeout

    BZPOPMAX、BZPOPMIN:阻塞式最大/最小元素弹出操作

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/5612.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【redis】Redis数据类型(三)List类型

目录 List类型介绍特点 List数据结构附:3.2以前的版本(介绍一下压缩列表和双向链表)压缩列表ZipList双向链表LinkedList 常用命令lpush示例 lpushx示例 rpush示例 rpushx示例 LPOP示例 RPOP示例 BLPOP非阻塞行为阻塞行为相同的 key 被多个客户端同时阻塞在 MULTI/EX…

[笔试强训day06]

文章目录 NC10 大数乘法NC1 大数加法NC40 链表相加(二) NC10 大数乘法 NC10 大数乘法 #include <string> #include <vector> class Solution {public:string solve(string s, string t) {int m s.size(), n t.size();reverse(s.begin(), s.end());reverse(t.beg…

Matlab图像处理——基于BP神经网络的车牌标识识别系统

1. 数据集介绍 中国交通标志数据集&#xff1a; https://nlpr.ia.ac.cn/pal/trafficdata/detection.html 该数据集包含58类交通标志。 2. 数据处理 按照文件标签&#xff0c;将数据集划分了58类&#xff0c;如下&#xff1a; 对应的类别信息记录如下&#xff1a; 限速5km/…

2024 一带一路暨金砖国家技能发展与技术创新大赛【企业信息系统安全赛项】选拔赛样题

2024 一带一路暨金砖国家技能发展与技术创新大赛--企业信息系统安全赛项任务书 第一阶段&#xff1a; CTF 夺旗任务一 WEBCMS任务二 杂项 MISC任务三 Linux 应急响应分析任务四 Baby_PWN任务五 流量溯源 第二阶段&#xff1a; 企业网络安全配置与渗透需要2023环境私信博主&…

element-plus中使用el-switch时,用‘0,1’或者0,1来代替true,false绑定

介绍 switch 开关默认用 true, false来绑定的&#xff0c;但是在实际的项目中&#xff0c;有时候根据后端的接口返回&#xff0c;也可能会用字符串0 和 1 &#xff0c;或者数字 0,1来代替; 具体实现如下 详情&#xff1a; 主要实现方式是通过使用el-switch组件里的 active-val…

企业计算机服务器中了rmallox勒索病毒怎么处理,rmallox勒索病毒处理建议

在网络技术不断发展的时代&#xff0c;网络在企业中的应用广泛&#xff0c;可以为企业带来更多的便利&#xff0c;大大提升了企业的生产效率&#xff0c;但网络作为虚拟世界&#xff0c;在为企业提供便利的同时&#xff0c;也为企业数据安全带来严重威胁。近期&#xff0c;云天…

mysql 删除数据,导致存在表空间碎片的解决方法

mysql删除数据&#xff0c;导致存在表空间碎片的解决方法 1.分区表2. 使用OPTIMIZE TABLE3. 定期重建表4. 监控和维护5. 考虑其他存储引擎或数据库系统&#xff1a;6. 调整删除策略&#xff1a; 删除大量数据&#xff0c;尤其是频繁发生的删除操作&#xff0c;确实可能导致表空…

ffmpeg命令行工具安装

1. root用户安装 #!/bin/bash sudo yum install epel-release -y#由于CentOS没有官方FFmpeg rpm软件包。但是&#xff0c;我们可以使用第三方YUM源&#xff08;Nux Dextop&#xff09;完成此工作。--外网 sudo rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro…

【YOLO改进】换遍IoU损失函数之EIoU Loss(基于MMYOLO)

EIoU损失函数 设计原理 一、IoU的局限性 IoU&#xff08;Intersection over Union&#xff09;是一种常用于评估目标检测模型性能的指标&#xff0c;特别是在计算预测边界框与真实边界框之间的重叠程度时。然而&#xff0c;IoU存在一些局限性&#xff0c;尤其是当两个边界框…

[python趣味实战]----基于python代码实现浪漫爱心 დ

正文 01-效果演示 下图是代码运行之后的爱心显示结果&#xff1a; 下面的视频该爱心是动态效果&#xff0c;较为简洁&#xff0c;如果需要使用&#xff0c;可以进行完善&#xff0c;这里只是一个趣味实战&#xff0c;下面将对代码实现进行非常详细地描述&#xff1a; 浪漫爱心…

Java数据结构-模拟实现ArrayList

MyArrayList顺序结构&#xff1a; 接口和MyArrayList重写接口 接口 接口中的方法是很多类通用的&#xff0c;所以可以写到接口中 public interface IList {public void add(int data) ;// 在 pos 位置新增元素public void add(int pos, int data);// 判定是否包含某个元素p…

踏上R语言之旅:解锁数据世界的神秘密码(三)

多元相关与回归分析及R使用 文章目录 多元相关与回归分析及R使用一.变量间的关系分析1.两变量线性相关系数的计算2.相关系数的假设检验 二.一元线性回归分析的R计算三、回归系数的假设检验总结 一.变量间的关系分析 变量间的关系及分析方法如下&#xff1a; 1.两变量线性相关…

LeetCode 727. 菱形

输入一个奇数 n n n&#xff0c;输出一个由 * 构成的 n n n阶实心菱形。 输入格式 一个奇数 n n n。 输出格式 输出一个由 * 构成的 n n n阶实心菱形。 具体格式参照输出样例。 数据范围 1 ≤ n ≤ 99 1≤n≤99 1≤n≤99 输入样例&#xff1a; 5输出样例&#xff1a; *…

JAVA的多态

在Java中&#xff0c;多态&#xff08;Polymorphism&#xff09;是面向对象编程的三大特性之一&#xff0c;它允许一个引用变量在运行时引用不同类的对象&#xff0c;并根据实际对象的类型来执行对应的方法。多态的存在增加了代码的灵活性和可扩展性。 多态的实现通常依赖于以下…

一文掌握python上下文管理器(with语句)

目录 一、上下文管理协议 二、with 语句 三、自定义上下文管理器 四、生成器上下文管理器 五、几个常用例子 1、自动关闭网络连接 2、临时更改目录 3、数据库事务管理 4、计时器上下文管理器 5、日志记录上下文管理器 6、资源锁定上下文管理器 7、临时修改环境变量…

windows远程访问树莓派ubuntu22.04 桌面 - NoMachine

通过nomachine 实现 windows 安装 nomachine 下载&#xff1a;链接&#xff1a;https://pan.baidu.com/s/10rGBREs-AnwRz7D7QbLQ1A?pwd8651 提取码&#xff1a;8651 安装&#xff1a;下一步 下一步 使用&#xff1a; 下一步 下一步 ubuntu 安装 nomachine服务 下载&#…

Java基础知识总结(81)

JUC容器 JUC基于非阻塞算法&#xff08;Lock Free 无锁编程&#xff09;提供了一组高并发的List、Set、Queue、Map容器。 JUC高并发容器是基于非阻塞算法实现的容器类&#xff0c;无锁编程算法主要通过CAS&#xff08;Compare And Swap&#xff09;volatile的组合实现&#x…

【C++程序员的自我修炼】string 库中常见的用法 (一)

唤起一天明月照我满怀冰雪浩荡百川流鲸饮未吞海 剑气已横秋 目录 string 库的简介 string 的一些小操作 构造函数的使用 拷贝构造的常规使用 指定拷贝内容的拷贝构造 拷贝字符串开始的前 n 个字符 用 n 个字符初始化 计算字符串的长度 string 的三种遍历方式 常规的for循环 op…

利用大型语言模型提升数字产品创新:提示,微调,检索增强生成和代理的应用

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

Linux基础part-6

一、Shell编程理论和运用 1、程序的编程风格和执行模式 编程风格&#xff08;Programming Style&#xff09; 过程式编程&#xff1a;以指令为中心&#xff0c;来进行写程序&#xff0c;数据服务于指令。&#xff08;bash shell) C 以指令为中心&#xff0c;程序的逻辑由一系…