思路:
    直接比较最小和最大两个字符串即可。
    而获取最小最大可以直接使用min max函数。

    1. # 编写一个函数来查找字符串数组中的最长公共前缀。
    2. #
    3. # 如果不存在公共前缀,返回空字符串 ""。
    4. #
    5. # 示例 1:
    6. #
    7. # 输入: ["flower","flow","flight"]
    8. # 输出: "fl"
    9. #
    10. #
    11. # 示例 2:
    12. #
    13. # 输入: ["dog","racecar","car"]
    14. # 输出: ""
    15. # 解释: 输入不存在公共前缀。
    16. #
    17. #
    18. # 说明:
    19. #
    20. # 所有输入只包含小写字母 a-z 。
    21. # Related Topics 字符串
    22. # 👍 1218 👎 0
    23. # leetcode submit region begin(Prohibit modification and deletion)
    24. class Solution(object):
    25. def longestCommonPrefix(self, strs):
    26. """
    27. :type strs: List[str]
    28. :rtype: str
    29. """
    30. pre = ''
    31. if len(strs) == 0:
    32. return pre
    33. min_str = min(strs)
    34. max_str = max(strs)
    35. for index, item in enumerate(min_str):
    36. if max_str[index] != min_str[index]:
    37. return min_str[:index]
    38. return min_str
    39. # leetcode submit region end(Prohibit modification and deletion)
    40. s = Solution()
    41. print(s.longestCommonPrefix(["flower", "flow", "flight"]))
    42. print(s.longestCommonPrefix(["c", "c"]))
    43. print(s.longestCommonPrefix(["a", "b"]))