Learn
Practice
Interview
Resources
Newsletter
F
Toggle theme
0
F
0
Toggle menu
Animations
← Back to All Animations
First Unique Number
Bookmark
Brute Force
LinkedHashSet
Queue (Lazy Delete)
Input
Standard
All Duplicates
Simple
Custom
nums
=
[2, 3, 5]
,
operations
=
[showFirstUnique(), add(5), showFirstUnique(), add(2), showFirstUnique()]
new([2, 3, 5])
showFirstUnique()
=
?
add(5)
showFirstUnique()
=
?
add(2)
showFirstUnique()
=
?
list
front
keep every value; scan for the first that appears once
new([2, 3, 5])
showFirstUnique()
=
?
add(5)
showFirstUnique()
=
?
add(2)
showFirstUnique()
=
?
list
front
keep every value; scan for the first that appears once
new([2, 3, 5])
showFirstUnique()
=
?
add(5)
showFirstUnique()
=
?
add(2)
showFirstUnique()
=
?
list
front
2
count
2
×1
append
2
to the list
new([2, 3, 5])
showFirstUnique()
=
?
add(5)
showFirstUnique()
=
?
add(2)
showFirstUnique()
=
?
list
front
2
3
count
2
×1
3
×1
append
3
to the list
new([2, 3, 5])
showFirstUnique()
=
?
add(5)
showFirstUnique()
=
?
add(2)
showFirstUnique()
=
?
list
front
2
3
5
count
2
×1
3
×1
5
×1
append
5
to the list
new([2, 3, 5])
showFirstUnique()
=
2
add(5)
showFirstUnique()
=
?
add(2)
showFirstUnique()
=
?
list
front
2
3
5
count
2
×1
3
×1
5
×1
return
2
new([2, 3, 5])
showFirstUnique()
=
2
add(5)
showFirstUnique()
=
?
add(2)
showFirstUnique()
=
?
list
front
2
3
5
count
2
×1
3
×1
5
×2
count[5] =
2
new([2, 3, 5])
showFirstUnique()
=
2
add(5)
showFirstUnique()
=
?
add(2)
showFirstUnique()
=
?
list
front
scan
2
3
5
5
count
2
×1
3
×1
5
×2
2
count = 1
unique!
new([2, 3, 5])
showFirstUnique()
=
2
add(5)
showFirstUnique()
=
2
add(2)
showFirstUnique()
=
?
list
front
2
3
5
5
count
2
×2
3
×1
5
×2
count[2] =
2
new([2, 3, 5])
showFirstUnique()
=
2
add(5)
showFirstUnique()
=
2
add(2)
showFirstUnique()
=
?
list
front
scan
2
3
5
5
2
count
2
×2
3
×1
5
×2
2
count = 2
skip
new([2, 3, 5])
showFirstUnique()
=
2
add(5)
showFirstUnique()
=
2
add(2)
showFirstUnique()
=
3
list
front
2
3
5
5
2
count
2
×2
3
×1
5
×2
all operations processed
algo
master
.
io
Step:
Brute force: keep every value in order plus a count map.
0 / 26
Input
Standard
All Duplicates
Simple
Custom
nums
=
[2, 3, 5]
,
operations
=
[showFirstUnique(), add(5), showFirstUnique(), add(2), showFirstUnique()]
0 / 26
algo
master
.
io
Step:
Brute force: keep every value in order plus a count map.