Escribir una función para encontrar la matriz de cadenas prefijo común más larga.
Si no hay un prefijo común, devuelve una cadena vacía ""
.
Ejemplo 1:
输入: [ " flor " , " fluir " , " vuelo " ]
输出: " fl "
En el uso de zip pitón () método
clase Solución:
def longestCommonPrefix (self, STRs: Listado [str]) -> str:
# 采用postal ()方法
s = ''
para i en zip (* STRs): # postal ([ "flor", "flujo", "vuelo"]) = [( 'f', 'f', 'f'), ( 'l', 'l', 'l'), ( 'o', 'o', 'i'), ( 'w', 'w', 'g')]
si len (conjunto (i)) == 1 :
s = s + i [0]
otra cosa :
rotura
de retorno s
método pitón, zip () describe:
zip () incorporada en la función es pitón, función zip () se utiliza como un parámetro iterables, el elemento correspondiente del objeto embalado en una tupla, y luego regresó a partir de estas listas de tuplas .
Si el número de elementos en cada iteración objetos incoherentes, a través del objeto basado camino más corto, por ejemplo:
A = >>> [l, 2,3 ]
>>> B = [4,5,6 ]
>>> C = [4,5,6,7,8 ]
>>> cremallera postal = (A, B ) # empaquetado como una lista de tuplas
[(1, 4), (2 ,. 5), (. 3 ,. 6 )]
>>> postal (a, C) # consistente con el número de elementos en la lista de más corta
[(1, 4 ), (2 ,. 5), (3 ,. 6 )]
>>> zip (* zip) # y el código postal contraste, * cremallera entiende que ser descomprimido, para devolver una matriz de dos dimensiones
[(1, 2, 3), (4 , 5, 6)]