题目描述:
运行结果:
代码展示:
class Solution {
public String longestCommonPrefix(String[] strs) {
if(strs == null || strs.length == 0){
System.out.println("");
}
int length = strs[0].length();
int count = strs.length;
//遍历数组里第一个字符串(“flower”)
for(int i=0;i<length;i++){
//将字符串拆分成一个个字符,然后与剩下的字符串与一个个比较
char c = strs[0].charAt(i);
for(int j=1;j<count;j++){//开始遍历字符串数组里的第二个第三个字符串
//这里考虑了两种不成立的情况:如果到某个位置两个字符不相等
//或者第二个字符串的长度==第一个字符,也就是说第二个字符串长度小于第一个字符串长度
if (i == strs[j].length() || strs[j].charAt(i) != c) {
//返回第一个字符串截取从0开始到i之间的字符
return(strs[0].substring(0,i));
}
}
}
//否则的话第一个字符串就是所以字符串的公共前缀
return(strs[0]);
}
}