Prova final — Árvores
Três problemas inéditos (não vistos nas aulas) para testar se você sai desta seção resolvendo qualquer problema do tema: um fácil, um médio e um difícil. Alguns casos de teste são ocultos — como no LeetCode de verdade. Resolva em Python ou JavaScript.
Symmetric Tree
Verifique se uma árvore binária é espelhada em torno do centro (a subárvore esquerda é o espelho da direita).
Exemplo: [1,2,2,3,4,4,3] → true. [1,2,2,null,3,null,3] → false.
Binary Tree Right Side View
Imagine-se olhando a árvore pelo lado direito. Retorne os valores dos nós que você consegue ver, de cima para baixo (o nó mais à direita de cada nível).
Exemplo: [1,2,3,null,5,null,4] → [1,3,4].
Binary Tree Maximum Path Sum
Um caminho é qualquer sequência de nós conectados por arestas (não precisa passar pela raiz nem chegar a uma folha; vira no máximo um nó). Retorne a maior soma de valores ao longo de algum caminho. Os valores podem ser negativos.
Exemplo: [-10,9,20,null,null,15,7] → 42 (o caminho 15 → 20 → 7). [1,2,3] → 6.