1 solutions
-
0
题目大意
这道题目要求我们模拟一个DNS本地缓存系统
思路
1.缓存容量:缓存最多能存储N条记录。
2.URL请求处理: 每秒处理一个URL请求。 如果请求的URL已经存在于缓存中,直接返回from_cache(输出0)。 如果请求的URL不在缓存中,返回from_internet(输出1),并将该URL加入缓存。
3.TTL管理: 每个URL在缓存中都有一个TTL(Time To Live)值,表示其在缓存中的存活时间。 每秒钟,缓存中所有URL的TTL值减1。当TTL值减为0时,该URL从缓存中移除。 如果加入缓存的新URL没有指定TTL,默认TTL值为5秒。 如果有指定TTL,则使用指定的TTL值。
4.缓存替换策略: 当缓存已满且需要加入新的URL时,移除TTL值最小的URL。 如果有多个URL的TTL值相同,则按照先进先出的原则移除最早加入的URL。
类似题目推荐
LeetCode
1.239. 滑动窗口最大值 - 优先队列入门
CodeFun2000
代码
CPP
python
Java
Go
Js
- 1
Information
- ID
- 2
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 6
- Tags
- # Submissions
- 147
- Accepted
- 27
- Uploaded By