Learn
Practice
Interview
Resources
Newsletter
F
Toggle theme
0
F
0
Toggle menu
Animations
← Back to All Animations
Design Browser History
Bookmark
Input
Standard
Heavy back
Visit clears forward
Custom
homepage
=
google.com
,
operations
=
[visit(facebook.com), visit(youtube.com), visit(twitter.com), back(1), back(1), forward(1), visit(linkedin.com), forward(2), back(2)]
←
→
https://
google.com
BrowserHistory("google.com")
current =
0
last =
0
0
google.com
current
last
←
→
https://
google.com
BrowserHistory("google.com")
current =
0
last =
0
0
google.com
current
last
←
→
https://
facebook.com
visit("facebook.com")
current =
1
last =
1
0
1
google.com
facebook.com
current
last
last = current =
1
nothing ahead
←
→
https://
youtube.com
visit("youtube.com")
current =
2
last =
2
0
1
2
google.com
facebook.com
youtube.com
current
last
last = current =
2
nothing ahead
←
→
https://
twitter.com
visit("twitter.com")
current =
3
last =
3
0
1
2
3
google.com
facebook.com
youtube.com
twitter.com
current
last
last = current =
3
nothing ahead
←
→
https://
youtube.com
back(1)
current =
2
last =
3
0
1
2
3
google.com
facebook.com
youtube.com
twitter.com
current
last
return
"youtube.com"
←
→
https://
youtube.com
forward(1)
current =
2
last =
3
0
1
2
3
google.com
facebook.com
youtube.com
twitter.com
current
last
current =
min(
3
,
1
+
1
) =
2
←
→
https://
linkedin.com
visit("linkedin.com")
current =
3
last =
3
0
1
2
3
google.com
facebook.com
youtube.com
linkedin.com
current
last
current =
2
+ 1 =
3
history[
3
] =
"linkedin.com"
←
→
https://
linkedin.com
forward(2)
current =
3
last =
3
0
1
2
3
google.com
facebook.com
youtube.com
linkedin.com
current
last
current =
min(
3
,
3
+
2
) =
3
clamped at last
←
→
https://
facebook.com
back(2)
current =
1
last =
3
0
1
2
3
google.com
facebook.com
youtube.com
linkedin.com
current
last
current =
max(
0
,
3
-
2
) =
1
←
→
https://
facebook.com
current =
1
last =
3
0
1
2
3
google.com
facebook.com
youtube.com
linkedin.com
current
last
current page
"facebook.com"
algo
master
.
io
Step:
Initialize the history with homepage "google.com". current = 0, last = 0.
0 / 19
Input
Standard
Heavy back
Visit clears forward
Custom
homepage
=
google.com
,
operations
=
[visit(facebook.com), visit(youtube.com), visit(twitter.com), back(1), back(1), forward(1), visit(linkedin.com), forward(2), back(2)]
0 / 19
algo
master
.
io
Step:
Initialize the history with homepage "google.com". current = 0, last = 0.