Пример: Входные данные: strs = ["flower","flow","flight"]
Выходные данные: "fl"
Я новичок в программировании и пытаюсь решить эту проблему (из leetcode). мой способ - найти самую короткую строку между строками, вот мой код, я не могу понять, где я сделал не так, кажется, цикл while вообще не работает. Я ценю, если кто-то может мне помочь. вот мой код:
Код: Выделить всё
class Solution:
def longestCommonPrefix(self, strs: List[str]) -> str:
string = ""
len_st = []
for st in strs:
len_st.append(len(st))
m = min(len_st)
prefix = strs[len_st.index(m)]
while prefix:
for st in strs:
if prefix in st:
continue
else:
prefix = prefix.replace(prefix[-1], "")
break
return prefix
else:
return ""
выход: "flo"
ожидаемый результат: "fl"
Подробнее здесь: https://stackoverflow.com/questions/681 ... mon-prefix
Мобильная версия