LeetCode 14. Longest Common Prefix
题目描述:
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 “”。
示例 1:
输入: [“flower”,“flow”,“flight”]
输出: “fl”
示例 2:
输入: [“dog”,“racecar”,“car”]
输出: “”
解释: 输入不存在公共前缀。
说明:
所有输入只包含小写字母 a-z 。
代码:
package easy;
import java.util.Arrays;
public class LongestCommonPrefix {
public static void main(String[] args) {
// TODO Auto-generated method stub
String []strs= {"aa","a"};
System.out.println(LongestCommonPrefix.longestCommonPrefix(strs));
}
public static String longestCommonPrefix(String[] strs) {
if(strs.length==0)
return null;
String s=strs[0];
int i=0;
int flag=0;
for (i = 0; i < s.length(); i++) {
for(int j=1;j<strs.length;j++)
{
//判断其中一个字符串不符合匹配的情况:包括不匹配,或者其中一个串已匹配到结尾
if(strs[j].length()==i||(strs[j].charAt(i)!=s.charAt(i)))
{
flag=1;
break;
}
}
if(flag==1)
break;
}
if(i==0)
return "";
else
return s.substring(0, i);
}
}