Один из десятка тысяч разборов этой задачи, в большей степени перевод leetcode, очень недалёкий, но кому-то как и мне может надо прорешать задачу N раз, чтобы понять и не забывать её. Дано: Напишите функцию для поиска самой длинной строки с общим префиксом среди массива строк. Если общего префикса нет, то возвращается пустая строка "". Пример:
Вход: strs = ["потолок", "поток", "полет"].
Выходные данные: "по" Ограничения:
1 <= strs.length <= 200
0 <= strs[i].length <= 200
strs[i] состоит только из строчных букв. 1) Наивное решение: def longestCommonPrefix(strs: List[str]) -> str:
ans= ""
if strs is None or len(strs) == 0:
return ans
minimumLength = len(strs[0])
for i in range(1, len(strs)):
minimumLength = min(minimumLength, len(strs[i]))
for i in range(0, minimumLength):
current = strs[0][i]
for j in range(0, len(strs)):
if strs[j][i] != current:
return ans
ans+= current
return ans Первое, прове