⚠️ 加了分之后,名次跟着变

⚠️ 加了分之后,名次跟着变

下面这段先看乙排第几,给乙加 30 分之后再看一次。打出加分前的名次、加分后的名次和加分后的分数(三段,用 / 隔开;名次从 0 开始)。 题面里已经写好一个**迷你 Redis**(class Mi

阅读更多 →
排行榜的前三名

排行榜的前三名

下面这段把五个人的分数放进排行榜,打出前三名(三段,用 / 隔开)。 题面里已经写好一个**迷你 Redis**(class Mini)和一个当数据库用的 Store Mini 的时间是**步数**

阅读更多 →
加分的时候该怎么做

加分的时候该怎么做

用户得了 10 分要加到排行榜上。正确的做法是【0】。

阅读更多 →
排行榜为什么不适合每次现算

排行榜为什么不适合每次现算

一个几十万人的排行榜,每次有人来看就去库里现排一次,问题在于【0】。

阅读更多 →
自己写:把缓存的三种情况一次量齐

自己写:把缓存的三种情况一次量齐

把 TODO 补完,打出查存在的键 100 次回源几趟、查不存在的键不缓存空值时回源几趟、缓存空值之后回源几趟(三段,用 / 隔开)。 题面里已经写好一个**迷你 Redis**(class Mini

阅读更多 →
⚠️ 自己写:缓存过期的那一瞬间

⚠️ 自己写:缓存过期的那一瞬间

把 TODO 补完:缓存设 2 秒过期,查 3 次,中间让 2 秒过去。打出一共去库里跑了几趟。 题面里已经写好一个**迷你 Redis**(class Mini)和一个当数据库用的 Store M

阅读更多 →
自己写:把穿透挡住

自己写:把穿透挡住

把 TODO 补完:查一个不存在的键 5 次,要让去库里的次数变成 1。打出去库里跑了几趟。 题面里已经写好一个**迷你 Redis**(class Mini)和一个当数据库用的 Store Min

阅读更多 →
自己写:把最常见那套缓存写出来

自己写:把最常见那套缓存写出来

把 TODO 补完:查 u2 三次,先看缓存、没有就回源、回来存一份。打出取到的值和去库里跑了几趟(用 / 隔开)。 题面里已经写好一个**迷你 Redis**(class Mini)和一个当数据库用

阅读更多 →
⚠️ 穿透:一百次全打到库上

⚠️ 穿透:一百次全打到库上

下面这段查一个库里根本没有的键 100 次,一次不缓存"没有",一次把"没有"也存一份。打出两种情况下各去库里跑了多少趟(用 / 隔开)。 题面里已经写好一个*

阅读更多 →
穿透该怎么挡

穿透该怎么挡

要挡住"反复查一个不存在的键"这种情况,最直接的办法是【0】。

阅读更多 →