Mental Model
Find the smallest part of a big string that contains all characters of a smaller string. We slide a window over the big string and adjust it to keep all needed characters.
Analogy: Imagine searching for all ingredients of a recipe in a long shelf of spices. You pick a small box and move it along the shelf, making it bigger or smaller to hold all ingredients with no extras.
Big string: [A B C D E F G H I J]
Window: ↑ ↑
start end
Needed chars: [A B C]
Window contains: A B C D E