题目:
编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。
代码:
char * longestCommonPrefix(char ** strs, int strsSize){
if(strsSize==0){
return "";
}
for(int i=0;i<strlen(strs[0]);i++){
for(int j=1;j<strsSize;j++){
if(strs[0][i]!=strs[j][i]){
strs[0][i]='\0';
break;
}
}
}
return strs[0];
}
思路:
采用双层for循环嵌套,i表示列,strlen(strs[0])表示所有字符串中的第一个。j表示行,将第一个字符串中的第i个字符与其他字符串中的比较。如果比较字符串的第i列不同,该列结束,直接跳出。
运行结果: