文章
时间轴
标签
音乐室
友人帐
一刻时光
清单
留言板
相册
算法海洋
关于
Slcpの童话镇 🏰
写文章
1797. 设计一个验证系统
中等
Java
数据结构与算法
原题链接
发布日期:
2023年02月09日
文章字数:
5.1k
阅读次数:
473
阅读时长:
0小时0分0秒
## 解题思路 Map<tokenId, 过期时间> 缓存验证码 > 复杂度分析 时间复杂度:countUnexpiredTokens` O(n) `,n为循环次数 空间复杂度:O(n),n为map大小 ## 代码 ```java class AuthenticationManager { int timeToLive; Map<String, Integer> map; public AuthenticationManager(int timeToLive) { this.timeToLive = timeToLive; this.map = new HashMap<String, Integer>(); } public void generate(String tokenId, int currentTime) { map.put(tokenId, timeToLive + currentTime); } public void renew(String tokenId, int currentTime) { if(map.getOrDefault(tokenId, 0) > currentTime) { map.put(tokenId, timeToLive + currentTime); } } public int countUnexpiredTokens(int currentTime) { int count = 0; for (int time : map.values()) { if (time > currentTime) { count++; } } return count; } } ```
您阅读这篇文章共耗时:
0小时16分34秒
文章链接:
https://www.slcp.top/article/read/1623588117722374146
版权声明:
本博客所有文章除特別声明外,均采用
CC BY 4.0
许可协议。转载请注明来源
Slcp
!
转载文章以及部分引用均为自己整理记录学习而用,若有侵权,请联系删除。
Java
数据结构与算法
评论
Valine
Gitalk
目录
搜索
首页
前进
后退
刷新
申请友链
在线联系