编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 ""
。
示例 1:
输入: ["flower","flow","flight"] 输出: "fl"
示例 2:
输入: ["dog","racecar","car"] 输出: "" 解释: 输入不存在公共前缀。
说明:
所有输入只包含小写字母 a-z
。
代码:
1 class Solution(){ 2 public: 3 string longestCommonPrefix(vector<string>& strs){ 4 if(strs.empty()) return "";//如果容器vector是空的,返回"" 5 string res = strs[0];//以第一个字符串作为对比标准,res就是公共前缀 6 for(int i=0;i<strs.size();i++){ 7 for(int j=0;j<res.length();j++){ 8 if(res[j]==strs[i][j]){ 9 continue; 10 } 11 else{ 12 res.erase(j);//找到第一个不符合的字符串位置,从j开始删除到末尾 13 break; 14 } 15 } 16 } 17 return res; 18 } 19 }
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 ""
。
示例 1:
输入: ["flower","flow","flight"] 输出: "fl"
示例 2:
输入: ["dog","racecar","car"] 输出: "" 解释: 输入不存在公共前缀。
说明:
所有输入只包含小写字母 a-z
。