[LeetCode] 0140. Salto de palabras ii

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

Tabla de contenido

Duro

 


dada una cuerda s y un diccionario de cuerdas palabraDict, añadir espacios en s Construir una oración en la que cada palabra sea una palabra válida del diccionario. Devolver todas las oraciones posibles en cualquier orden.

Nota que la misma palabra en el diccionario pueda reutilizarse varias veces en la segmentación.

Ejemplo 1:

Aporte: s = "gatosyperros", wordDict = ["gato", "gatos", "y", "arena", "perro"]
Producción: ["gatos y perros", "gato y perro"]

Ejemplo 2:

Aporte: s = "piñaplumamanzana", wordDict = ["manzana", "pluma", "plumamanzana", "pino", "piña"]
Producción: ["manzana piña pluma manzana", "manzana piña pluma manzana", "manzana piña pluma manzana"]
Explicación: Tenga en cuenta que se le permite reutilizar una palabra del diccionario.

Ejemplo 3:

Aporte: s = "gatos y perros", wordDict = ["gatos","perros","arena","y","gato"]
Producción: []

Restricciones:

  • 1 <= longitud s. <= 20
  • 1 <= palabraDict.longitud <= 1000
  • 1 <= palabraDict[i].length <= 10
  • s y palabraDict[i] constan únicamente de letras inglesas minúsculas.
  • Todas las cuerdas de palabraDict son único.
  • La entrada se genera de manera que la longitud de la respuesta no exceda los 10 caracteres.5.

Pitón

				
					# Complejidad de tiempo: O (2^n) # Complejidad del espacio: o (2^n) Desde la clase de la clase de importación Solución: defbreak (self, s: str, worddict: list [str]) -> list [str]: word_set = set (worddict) memoization = {} return._dfs (s, word_set) Def _dics (Memoization: STROATION: STROATION: STROIS dict) -> list [str]: if restitive en memoización: return Memoization [REMPLETS] If no REMPTER: return [""] Results = [] para i en el rango (1, LEN (REMPLETO (RESTAURSTR) + 1): CurrentWord = REMPLETO EN NextWord) Memoización [REMPLETS] = Resultados de retorno Resultados S = "CatsandDog" WordDict = ["Cat", "Cats", "y", "Sand", "Dog"] Print (Solution (). Word Break (S, WordDict)))
				
			
es_ESEspañol