一 问题描述
标准的 Web 浏览器包含在最近访问过的页面中向后和向前移动的功能。实现这些特性的一种方法是使用双栈来跟踪前后移动可以到达的页面。
Web 导航支持下面的命令。
- 后退页面:将当前页面推到前进栈的顶部。从后退栈的顶部弹出页面,使其成为新的当前页面。如果后退栈为空,则忽略该命令。
- 前进页面:将当前页面推到后退栈的顶部。从前进栈顶部弹出页面,使其成为新的当前页面。如果前进栈为空,则忽略该命令。
- 访问页面:将当前页面推到后向栈的顶部,使 URL 成为新的当前页面。前进栈清空。
- 退出页面:退出浏览器
下面红色表示的分别对应上面列出的四个功能。
输入:输入一系列的后退、前进、访问、退出命令进行测试。
输出:对于除退出外的命令,则在执行该命令后单行输出当前页的 URL,否则输出 Ignored。退出命令没有输出。
假设浏览器的最初页面 URL 为 XXXXXXXXXXXX
输入样例 |
输出样例 |
VISIT AAAAAAAAAA |
AAAAAAAAAA |
VISIT BBBBBBBBBBB | BBBBBBBBBBB |
BACK |
AAAAAAAAAA |
BACK |
XXXXXXXXXXXX |
BACK |
Ignored |
FORWARD |
AAAAAAAAAA |