NeetCode 150 · padrão sliding window

Sliding Window

6 problemas · 3 entre os que mais caem · atualizado em 18 de julho de 2026
Para quem vai encarar entrevista de algoritmos

O padrão em 30 segundos

Uma janela [esquerda, direita] que desliza pelo array/string mantendo um estado incremental (soma, contagem, set de chars). Cresce pela direita; quando a condição quebra, encolhe pela esquerda. Serve para "melhor subarray/substring contígua que satisfaz X".

Como reconhecer na hora

  • "Substring/subarray mais longo/curto sem repetição / com soma ≤ K"
  • A resposta é um trecho CONTÍGUO: janela só funciona em contíguo
  • Você recalcularia a mesma soma/contagem várias vezes na força bruta
onde todo mundo erra · anotado no caderno

Recalcular o estado da janela do zero a cada passo (vira O(n²) disfarçado). O truque todo é atualizar incrementalmente: entra elemento pela direita, soma; sai pela esquerda, subtrai.

Complexidade típica: Tempo O(n): cada elemento entra e sai da janela no máximo uma vez.

Os 6 problemas da categoria

ProblemaDificuldadeNível no app
Best Time to Buy and Sell Stock cai muitoeasynível 1 · core
Longest Substring Without Repeating Characters cai muitomediumnível 2 · core
Longest Repeating Character Replacementmediumnível 2 · core
Permutation in Stringmediumnível 3
Minimum Window Substring cai muitohardnível 4 · core
Sliding Window Maximumhardnível 4

No app, esses 6 problemas entram numa trilha de 4 níveis com marcação do que mais cai em entrevista, e você registra tentativa, revisão e domínio de cada um.

Abrir a trilha NeetCode no app