> For the complete documentation index, see [llms.txt](https://garychang.gitbook.io/leetcode/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://garychang.gitbook.io/leetcode/14.-longest-common-prefix.md).

# 14. Longest Common Prefix

<https://leetcode.com/problems/longest-common-prefix>[/description/](https://leetcode.com/problems/climbing-stairs/description/)

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: ["flower","flow","flight"]
Output: "fl"
```

**Example 2:**

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

**Note:**

All given inputs are in lowercase letters `a-z`.

**Solution:**

```
class Solution(object):
    def longestCommonPrefix(self, strs):
        """
        :type strs: List[str]
        :rtype: str
        """
        ret = ''
        if len(strs) == 0:
            return ret
        for ssi in range(len(strs[0])):
            ss = strs[0][ssi]
            for i in range(1, len(strs), 1):
                if ssi > len(strs[i])-1 or ss != strs[i][ssi]:
                    return ret
            ret += strs[0][ssi]
        return ret
```
