查找字符串数组中的最大公共前缀,如果不存在公共前缀,返回空字符串,Java代码
时间: 2023-11-19 13:26:26 浏览: 74
求最大公共字串问题研究
可以使用水平扫描法,先将第一个字符串作为前缀,然后逐个比较后面的字符串,如果后面的字符串不以该前缀开头,则将前缀缩短一个字符,直到找到最大公共前缀或者前缀为空字符串。
Java代码如下:
```
public String longestCommonPrefix(String[] strs) {
if (strs == null || strs.length == 0) {
return "";
}
String prefix = strs[0];
for (int i = 1; i < strs.length; i++) {
while (strs[i].indexOf(prefix) != 0) {
prefix = prefix.substring(0, prefix.length() - 1);
if (prefix.isEmpty()) {
return "";
}
}
}
return prefix;
}
```
例如,对于输入 ["flower", "flow", "flight"],输出为 "fl"。
阅读全文