题目:
编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。
思路:
这道题我看了题解0.0,个人喜欢方法二,所谓的纵向比较。即从以第一个字符串的第一位开始分别与第二、第三等等字符串第一位比较,如果相同,就开始第二位再比较。
代码
class Solution {
public String longestCommonPrefix(String[] strs) {
if(strs.length ==0 || strs == null){
return "";
}
int length = strs[0].length(); //数组中第一个字符串长度
int stringNum =strs.length; //数组中字符串个数
for (int i = 0 ; i<=length-1;i++){
char array = strs[0].charAt(i);
for(int j = 1 ;j<=stringNum-1;j++){
if(i == strs[j].length() || strs[j].charAt(i) != array){//与其他字符串对应位置比较
return strs[0].substring(0,i);
}
}
}
return strs[0];
}
}