当前位置: 首页 > news >正文

1472. 设计浏览器历史记录

1472. 设计浏览器历史记录 - 力扣(LeetCode)

用一个列表(视作栈)维护浏览历史:初始化列表 history=[homepage],并初始化当前位置 cur=0。
visit:先把 cur 加一,把 history 中的从 cur 到末尾的字符串全部删除,然后把 url 加到 history 的末尾。
back:把 cur 更新为 max(cur−step,0),然后返回 history[cur]。
forward:把 cur 更新为 min(cur+step,n−1),其中 n 为 history 的长度,然后返回 history[cur]class BrowserHistory:def __init__(self, homepage: str):self.history = [homepage]self.cur = 0  # 当前页面是 history[cur]def visit(self, url: str) -> None:self.cur += 1del self.history[self.cur:]  # 把浏览历史前进的记录全部删除self.history.append(url)  # 从当前页跳转访问 url 对应的页面def back(self, steps: int) -> str:self.cur = max(self.cur - steps, 0)  # 后退 steps 步return self.history[self.cur]def forward(self, steps: int) -> str:self.cur = min(self.cur + steps, len(self.history) - 1)  # 前进 steps 步return self.history[self.cur]

http://www.dtcms.com/a/540422.html

相关文章:

  • ETCD 集群备份与恢复
  • ETCD 常用命令
  • 低空经济网络安全风险
  • 【音视频】B站的流媒体协议
  • GVHMR——基于重力-视角坐标的人体运动恢复:从RGB视频中提取人的SMPL轨迹(包含人体姿态估计WHAM、手势估计HaMeR的详解)
  • 【ROS2】驱动开发-通过控制器访问硬件(Hardware Access through Controllers)
  • 智能网联汽车网络发展总体目标:构建“泛在接入、能力协同、安全可信“的立体化体系
  • 网站可以备案先提交类别后来改么网站如何被百度快速收录
  • 【软考架构】案例分析:状态图和活动图的定义以及区别
  • 制作营销网站公司有没有做网站的
  • HarmonyOS 性能优化与安全开发:打造高效且安全的智能应用
  • 从TSX到JS:深入解析npm run build背后的完整构建流程
  • NAS助手 — 纯血鸿蒙时代的 NAS 文件分享新方案
  • HarmonyOS应用性能调优与内存管理实战
  • pulsar与kafka的架构原理异同点
  • 做火锅加盟哪个网站好五屏网站建设平台
  • 帮别人做网站违法大秦建设集团有限责任公司官方网站
  • 地轨的定义与用途
  • 使用Docker轻松搭建WordPress博客:完整指南
  • 电路学习——4个IO口控制12个LED(2025.10.28)
  • 【学习笔记】Ubuntu Linux使用过程问题记录
  • 机器学习/深度学习 信号处理 评估指标速查表
  • 惠州做网站的公司有哪些做电子元器件销售什么网站好
  • “LangChain 版化工厂危险行为告警系统”的完整项目
  • 【React的Fiber及中断-重启逻辑的设计】
  • 石狮建设网站网站建设费要摊销
  • 人工智能——K-Means聚类进行青少年市场细分实践
  • 卷积运算全解析:从原理到MATLAB实现
  • BIM+GIS尝试
  • vscode关闭自动激活conda环境