Learn
Practice
Interview
Resources
Newsletter
F
Toggle theme
0
F
0
Toggle menu
Animations
← Back to All Animations
Valid Parentheses
Bookmark
Repeated Replacement
Stack
Input
Nested
Pairs
Mismatch
Extra Closing
Unclosed
Custom
s
=
([{}])
len(s)
6
(
[
{
}
]
)
delete every adjacent pair, over and over, until none are left
len(s)
6
(
[
{
}
]
)
delete every adjacent pair, over and over, until none are left
pass
1
len(s)
6
(
[
{
}
]
)
contains "()", "[]" or "{}"
true
run another pass
pass
1
len(s)
6
(
[
{
}
]
)
1
×
"{}"
ready to delete
pass
2
len(s)
4
2 deleted
(
[
]
)
contains "()", "[]" or "{}"
true
run another pass
pass
2
len(s)
4
2 deleted
(
[
]
)
1
×
"[]"
ready to delete
pass
2
len(s)
2
4 deleted
(
)
replace("[]", "")
2 characters left
pass
3
len(s)
2
4 deleted
(
)
contains "()", "[]" or "{}"
true
run another pass
pass
3
len(s)
0
6 deleted
s is empty
replace("()", "")
0 characters left
pass
3
len(s)
0
6 deleted
s is empty
contains "()", "[]" or "{}"
false
the passes are done
pass
3
len(s)
0
6 deleted
s is empty
return true
, the string collapsed to nothing
algo
master
.
io
Step:
Start: delete adjacent pairs until none are left
0 / 11
Input
Nested
Pairs
Mismatch
Extra Closing
Unclosed
Custom
s
=
([{}])
0 / 11
algo
master
.
io
Step:
Start: delete adjacent pairs until none are left