Explore diversas soluciones LeetCode en Python, C++, JavaScript, SQL y TypeScript. Ideal para preparación de entrevistas, aprendizaje y práctica de código en múltiples lenguajes de programación. Enlace de repositorio de Github
Dada una matriz de cadenas cadenas
, grupo Los anagramas juntos. Puedes devolver la respuesta en cualquier orden.
Un Anagrama es una palabra o frase formada al reorganizar las letras de una palabra o frase diferente, generalmente utilizando todas las letras originales exactamente una vez.
Ejemplo 1:
Aporte: strs = ["comer", "té", "bronceado", "comió", "nat", "murciélago"] Producción: [["murciélago"],["nat", "bronceado"],["comió", "comió", "té"]]
Ejemplo 2:
Aporte: cadenas = [""] Producción: [[""]]
Ejemplo 3:
Aporte: cadenas = ["a"] Producción: [["a"]]
Restricciones:
1 <= longitud de cadena <= 10 4
0 <= strs[i].length <= 100
cadenas[i]
Consiste en letras minúsculas del alfabeto inglés.
Pitón
Complejidad de tiempo #: O(nklogk) Complejidad de espacio #: O(nk) de colecciones importar defaultdict de tipificación importar clase Lista Solución: def groupAnagrams(self, strs: List[str]) -> List[List[str]]: ans = defaultdict(lista) para s en strs: ans[tupla(ordenado(s))].append(s) devuelve ans.values() strs = ["comer", "té", "bronceado", "comió", "nat", "murciélago"] print(Solución().groupAnagrams(strs))