Learn
Practice
Interview
Resources
Newsletter
F
Toggle theme
0
F
0
Toggle menu
Animations
← Back to All Animations
Minimum Window Substring
Bookmark
Brute Force
Sliding Window
Filtered
Input
Input 1
Input 2
Repeated
No Window
Custom
s
=
ADOBECODEBANC
,
t
=
ABC
t =
"ABC"
0
1
2
3
4
5
6
7
8
9
10
11
12
A
D
O
B
E
C
O
D
E
B
A
N
C
formed
0
/ 0 required
t =
"ABC"
0
1
2
3
4
5
6
7
8
9
10
11
12
A
D
O
B
E
C
O
D
E
B
A
N
C
formed
0
/ 0 required
t =
"ABC"
0
1
2
3
4
5
6
7
8
9
10
11
12
min = 6
A
D
O
B
E
C
O
D
E
B
A
N
C
left
right
window vs t:
0
/3
not yet
formed
0
/ 3 required
A
0
/1
B
0
/1
C
0
/1
t =
"ABC"
0
1
2
3
4
5
6
7
8
9
10
11
12
min = 6
A
D
O
B
E
C
O
D
E
B
A
N
C
left
right
include s[
2
] =
'O'
(filler)
formed
0
/ 3 required
A
0
/1
B
0
/1
C
0
/1
t =
"ABC"
0
1
2
3
4
5
6
7
8
9
10
11
12
min = 6
A
D
O
B
E
C
O
D
E
B
A
N
C
left
right
window vs t:
3
/3
covers t
formed
3
/ 3 required
A
1
/1
B
1
/1
C
1
/1
t =
"ABC"
0
1
2
3
4
5
6
7
8
9
10
11
12
min = 6
A
D
O
B
E
C
O
D
E
B
A
N
C
left
right
still covers t, but not smaller than min =
6
formed
3
/ 3 required
A
1
/1
B
1
/1
C
1
/1
t =
"ABC"
0
1
2
3
4
5
6
7
8
9
10
11
12
min = 6
A
D
O
B
E
C
O
D
E
B
A
N
C
left
right
include s[
6
] =
'O'
(filler)
formed
1
/ 3 required
A
0
/1
B
0
/1
C
1
/1
t =
"ABC"
0
1
2
3
4
5
6
7
8
9
10
11
12
min = 6
A
D
O
B
E
C
O
D
E
B
A
N
C
left
right
window vs t:
1
/3
not yet
formed
1
/ 3 required
A
0
/1
B
1
/1
C
0
/1
t =
"ABC"
0
1
2
3
4
5
6
7
8
9
10
11
12
min = 6
A
D
O
B
E
C
O
D
E
B
A
N
C
left
right
window vs t:
2
/3
not yet
formed
2
/ 3 required
A
1
/1
B
1
/1
C
0
/1
t =
"ABC"
0
1
2
3
4
5
6
7
8
9
10
11
12
min = 5
A
D
O
B
E
C
O
D
E
B
A
N
C
left
right
window vs t:
2
/3
not yet
formed
2
/ 3 required
A
1
/1
B
1
/1
C
0
/1
t =
"ABC"
0
1
2
3
4
5
6
7
8
9
10
11
12
min = 4 "BANC"
A
D
O
B
E
C
O
D
E
B
A
N
C
min =
4
algo
master
.
io
Step:
Start of algorithm
0 / 160
Input
Input 1
Input 2
Repeated
No Window
Custom
s
=
ADOBECODEBANC
,
t
=
ABC
0 / 160
algo
master
.
io
Step:
Start of algorithm