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

1472.设计浏览器历史记录

在这里插入图片描述
这里是模拟浏览器的回退和前进
用一个列表来存储浏览器的历史记录
cur指向当前浏览器记录的位置
visit 就是清空之前访问过的历史记录,把当前的放进去
self.cur+=1代表进下一个访问
然后删掉 当前的和之前的,加入新的
前进和回退要考虑边界

class BrowserHistory:

    def __init__(self, homepage: str):
        self.history=[homepage]
        self.cur=0
        

    def visit(self, url: str) -> None:
        self.cur+=1
        del self.history[self.cur:]
        self.history.append(url)
    
        

    def back(self, steps: int) -> str:
        self.cur=max(self.cur-steps,0)
        return self.history[self.cur]
        

    def forward(self, steps: int) -> str:
        self.cur=min(self.cur+steps,len(self.history)-1)
        return self.history[self.cur]
        


# Your BrowserHistory object will be instantiated and called as such:
# obj = BrowserHistory(homepage)
# obj.visit(url)
# param_2 = obj.back(steps)
# param_3 = obj.forward(steps)

相关文章:

  • 阿里重磅模型深夜开源;DeepSeek宣布开源DeepGEMM;微软开源多模态AI Agent基础模型Magma...|网易数智日报
  • 如何看待 Kaiming He 最新提出的 Fractal Generative Models ?
  • JAVA-如何理解Mysql的索引
  • 004 Kafka异常处理
  • SQL命令详解之操作数据库
  • 初会学习记录
  • Metal 学习笔记五:3D变换
  • SpringBoot接入DeepSeek(硅基流动版)+ 前端页面调试
  • w803|联盛德|WM IoT SDK2.X测试|pinout|(2):w803开发板简介
  • 仿12306购票系统(3)
  • 可狱可囚的爬虫系列课程 15:防盗链反爬虫的处理
  • Bitbucket 设置SSH KEY方法
  • 【DeepSeek探索篇(四)】高效学习与工作,从搭建DeepSeek个人知识库开始!
  • 学习Flask:[特殊字符] Day 3:数据库集成
  • 0.【深度学习YOLOV11项目实战-项目安装教程】(图文教程,超级详细)
  • Python常见面试题的详解22
  • ShardingSphere Proxy 配置
  • Web开发:ORM框架之使用Freesql的导航属性
  • RK3568平台开发系列讲解(UBOOT篇)u-boot启动流程
  • pandas中的数据结构+数据查询
  • 出行注意防晒补水,上海五一假期以多云天气为主最高33℃
  • 总书记考察的上海“模速空间”,是一个怎样的空间?
  • 连演三场,歌剧《义勇军进行曲》在上海西岸大剧院上演
  • 主播说联播丨六部门出台新政!来华买买买,实惠多多多
  • 我国核电总体规模首次跃居世界第一,发电量持续增长
  • 哈马斯官员:只要以军持续占领,哈马斯就不会放下武器