[LeetCode]14. 最长公共前缀
Posted Spring-_-Bear
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[LeetCode]14. 最长公共前缀相关的知识,希望对你有一定的参考价值。
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 “”。
示例 1:
输入:strs = ["flower","flow","flight"]
输出:"fl"
示例 2:
输入:strs = ["dog","racecar","car"]
输出:""
解释:输入不存在公共前缀。
提示:
1 <= strs.length <= 200
0 <= strs[i].length <= 200
strs[i] 仅由小写英文字母组成
题解:
class Solution {
public String longestCommonPrefix(String[] strs) {
String str = "";
if (strs.length == 0) {
return str;
}
// 对字符串数组进行排序,排序后只需比较首尾两个字符串即可
Arrays.sort(strs);
int first = 0;
int last = strs.length - 1;
// 比较字符串数组中首尾两个字符串,找到它们公共前缀字符串即为所求
for (int i = 0; i < strs[first].length(); i++) {
if (strs[first].charAt(i) != strs[last].charAt(i)) {
break;
}
// 将当前比较字符追加到公共前缀字符串尾
str += strs[first].charAt(i);
}
return str;
}
}
以上是关于[LeetCode]14. 最长公共前缀的主要内容,如果未能解决你的问题,请参考以下文章