题目描述:
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串""
。
示例1:
输入:strs = ["flower","flow","flight"]
输出:"fl"
示例2:
输入:strs = ["dog","racecar","car"]
输出:""
解释:输入不存在公共前缀。
提示
0 <= strs.length <= 200
0 <= strs[i].length <= 200
-
strs[i]
仅由小写英文字母组成
思路
代码示例:
char * longestCommonPrefix(char ** strs, int strsSize){
if(strsSize == 0) {
return "";
} else if(strsSize == 1) {
return strs[0];
}
char * ans = (char *)malloc(sizeof(char) * 201);
ans[0] = '\0';
int i = 0, j;
char temp;
while(1) {
temp = strs[0][i];
for(j = 1; j < strsSize; j ++) {
if('\0' == strs[j][i] || temp != strs[j][i]) {
ans[i] = '\0';
return ans;
}
}
ans[i++] = temp;
}
ans[i] = '\0';
return ans;
}