O padrão em 30 segundos
Árvores binárias e BSTs: travessias (DFS in/pre/post-order, BFS por nível), altura, validação de BST, lowest common ancestor. A base é recursão com confiança: "assumo que a função resolve as subárvores e combino os resultados".
Como reconhecer na hora
- Qualquer coisa com hierarquia ou "por nível" (BFS com fila)
- BST no enunciado → a propriedade de ordem é SEMPRE parte da solução
- "Profundidade máxima", "balanceada", "simétrica" → DFS recursivo curto
onde todo mundo erra · anotado no caderno
Validar BST comparando só pai e filho direto: o erro mais clássico do NeetCode inteiro. A restrição é de FAIXA (min/max herdados de cima), não local. Se você só sabe uma coisa de árvore, saiba essa.
Complexidade típica: O(n) para visitar tudo; O(h) de pilha de recursão. Diga que h vira n em árvore degenerada.
Os 15 problemas da categoria
| Problema | Dificuldade | Nível no app |
|---|---|---|
| Invert Binary Tree | easy | nível 1 · core |
| Maximum Depth of Binary Tree | easy | nível 1 · core |
| Diameter of Binary Tree | easy | nível 1 |
| Balanced Binary Tree | easy | nível 1 |
| Same Tree | easy | nível 1 · core |
| Subtree of Another Tree | easy | nível 1 · core |
| Lowest Common Ancestor of a BST cai muito | medium | nível 2 · core |
| Binary Tree Level Order Traversal cai muito | medium | nível 2 · core |
| Binary Tree Right Side View | medium | nível 3 |
| Count Good Nodes in Binary Tree | medium | nível 3 |
| Validate Binary Search Tree cai muito | medium | nível 2 · core |
| Kth Smallest Element in a BST | medium | nível 2 · core |
| Construct Binary Tree from Preorder and Inorder | medium | nível 2 · core |
| Binary Tree Maximum Path Sum | hard | nível 4 · core |
| Serialize and Deserialize Binary Tree cai muito | hard | nível 4 · core |
No app, esses 15 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