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.
1 class Solution { 2 public: 3 string longestCommonPrefix(vector<string>& strs) { 4 if (strs.size() == 0)return ""; 5 int ans = 0, l = strs[0].length(); 6 for (int i =0; i < l; i++) { 7 char c = strs[0][i]; 8 for (int j = 1; j < strs.size(); j++) 9 if (strs[j][i] != c) 10 return strs[0].substr(0,ans); 11 ans++; 12 } 13 return strs[0].substr(0, ans); 14 } 15 };
唯一需要注意的地方是数组可能为空