動機

Problem

Write a function to find the longest common prefix string amongst an array of strings.

If there is no common prefix, return an empty string .

 

Example 1:

Input: strs = [flower,flow,flight]Output: fl

Example 2:

Input: strs = [dog,racecar,car]Output: Explanation: There is no common prefix among the input strings.

 

Constraints:

  • 1 <= strs.length <= 200
  • 0 <= strs[i].length <= 200
  • strs[i] consists of only lower-case English letters.

Sol

class Solution:
    def longestCommonPrefix(self, strs: List[str]) -> str:
        i = 0
        while i < len(strs[0]) and all([i < len(s) and s[i] == strs[0][i] for s in strs]):
            i+=1
        return strs[0][:i]