Prova final — Lista Ligada
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.
Remove Duplicates from Sorted List
Dada a cabeça de uma lista ligada ordenada, remova os nós com valor duplicado, deixando cada valor só uma vez. Retorne a lista.
Exemplo: 1 → 1 → 2 → 3 → 3 → 1 → 2 → 3.
Odd Even Linked List
Reagrupe a lista para que todos os nós em posição ímpar (1ª, 3ª, 5ª...) venham primeiro, seguidos dos em posição par — mantendo a ordem relativa de cada grupo. Faça em O(1) de espaço. Retorne a lista.
Exemplo: 1 → 2 → 3 → 4 → 5 → 1 → 3 → 5 → 2 → 4.
Reverse Nodes in k-Group
Inverta os nós da lista em grupos de k. Se o último grupo tiver menos de k nós, deixe-o como está. Retorne a lista.
Exemplo: 1 → 2 → 3 → 4 → 5, k = 2 → 2 → 1 → 4 → 3 → 5. Com k = 3 → 3 → 2 → 1 → 4 → 5.