Redis 的数据过期策略 Redis 采用 「惰性删除 + 定期删除」 两种策略相结合的方式,在 CPU 性能开销 与 内存占用 之间取得平衡。 --- 一、惰性删除(Lazy Expiration) 当客户端访问或修改某个键时,Redis 会在操作前调用 函数检查该键是否已过期: - 若已过期: Redis 会立即删除该键,然后向客户端返回 。 删除方式由配置项 决定: - 若开启( ),则采
缓存穿透 缓存穿透指的是:一个缓存和数据库中都不存在的数据,由于数据库无法写入缓存,导致频繁请求直接打到数据库,从而造成数据库压力过大甚至被“打穿”。 常见的解决方法包括:缓存空值 或 布隆过滤器。 布隆过滤器由一个全 0 的位图数组和 n 个哈希函数组成。当一个数据在请求缓存前,会先经过布隆过滤器。过滤器会通过 n 个哈希函数计算出 n 个哈希值,再分别对数组长度取模,并将对应的数组下标置为 1
P1439 【模板】最长公共子序列(洛谷题面) 题目 题目描述: 给出 的两个排列 和 ,求它们的最长公共子序列。 输入格式: 第一行是一个数 。 接下来两行,每行为 个数,为自然数 的一个排列。 输出格式: 一个数,即最长公共子序列的长度。 数据范围与说明: - 对于 的数据, ; - 对于 的数据, 。 输入输出样例 #1 输入: 输出: 题意 给定 的两个排列 、,求它们的最长公共子序列(L
P1434 [SHOI2002] 滑雪(洛谷题面) 题目 题目描述: Michael 喜欢滑雪。这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael 想知道在一个区域中最长的滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子: 一个人可以从某个点滑向上下左右相邻四个点之一,当且仅当高度
P1923 【深基9.例4】求第 k 小的数(洛谷题面) 题目 题目描述: 输入 $n$($1 \le n < 5000000$ 且 $n$ 为奇数)个数字 $ai$($1 \le ai < {10}^9$),输出这些数字的第 $k$ 小的数。最小的数是第 $0$ 小。 请尽量不要使用 来写本题,因为本题的重点在于练习分治算法。 输入格式: 第一行有两个整数,分别表示 $n$ 和 $k$。 第二行
P2196 题目 题目描述: 在一个地图上有 $N\ (N \le 20)$ 个地窖,每个地窖中埋有一定数量的地雷。同时,给出地窖之间的连接路径。当地窖及其连接的数据给出之后,某人可以从任一处开始挖地雷,然后每次可以移动到一个编号比当前节点大且联通的节点去挖地雷,当无满足条件的节点时挖地雷工作结束。设计一个挖地雷的方案,使某人能挖到最多的地雷。 输入格式: 有若干行。 第 $1$ 行只有一个数字,
P1216 [IOI 1994 / USACO1.5] 数字三角形(洛谷题面) 题目 题目描述: 观察下面的数字金字塔。 写一个程序来查找从最高点到底部任意处结束的路径,使路径经过数字的和最大。每一步可以走到左下方的点也可以到达右下方的点。 在上面的样例中,从 $7 \to 3 \to 8 \to 7 \to 5$ 的路径产生了最大权值。 输入格式: 第一个行一个正整数 $r$,表示行的数目。 后
P3654 题目 题目描述: 可是……这个篮球场,好像很久没有使用过的样子啊…… 里面堆满了学校的各种杂物呢…… 我们 Aqours 的成员要怎么在里面列队站下呢? 我们浦之星女子学院的篮球场是一个 $R$ 行 $C$ 列的矩阵,其中堆满了各种学校的杂物 (用 表示),空地 (用 表示) 好像并不多的样子呢…… 我们 Aqours 现在已经一共有 $K$ 个队员了,要歌唱舞蹈起来的话,我们得排成一
P10415(洛谷题面) 题目 题目描述: 给定一个 $W\times H$ 的长方形,两边长度均为整数。小蓝想把它切割为很多个边长为整数的小正方形。假设切割没有任何损耗,正方形的边长至少为 $2$,不允许出现余料,要求所有正方形的大小相等,请问最多能切割出多少个? 输入格式: 输入一行,包含两个整数 $W, H$,用一个空格分隔。 输出格式: 输出一行包含一个整数表示答案。如果不存在满足要求的方
P1048 [NOIP 2005 普及组] 采药(洛谷题面) 题目 题目描述: 辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你