最长公共前缀
题目
给k个字符串,求出他们的最长公共前缀(LCP)
样例
在 “ABCD” “ABEF” 和 “ACEF” 中, LCP 为 “A”
在 “ABCDEFG”, “ABCEFG”, “ABCEFA” 中, LCP 为 “ABC”题解
本题可采用逐个字符串进行比对或是按字符进行全数组遍历比对的方法。
public class Solution {
/**
* @param strs: A list of strings
* @return: The longest common prefix
*/
public String longestCommonPrefix(String[] strs) {
if (strs == null || strs.length == 0)
{
return "";
}
String prefix = strs[0];
for(int i = 1; i < strs.length; i++)
{
int j = 0;
while(j < strs[i].length() && j < prefix.length() && strs[i].charAt(j) == prefix.charAt(j))
{
j++;
}
if( j == 0)
{
return "";
}
prefix = prefix.substring(0, j);
}
return prefix;
}
}
Last Update 2016.10.5