LeetCode—114. Longest Common Prefix
题目
https://leetcode.com/problems/longest-common-prefix/description/
寻找最长公共前缀。给出字符串数组,找出数组中字符串的最长公共前缀。
思路及解法
分为2步:
1.找出数组中字符串的数量,最短的字符串长度
2.两层循环,外层拿出最短字符串中的每一个字符x,内层循环每一个字符串的对应位置,比较是否和x相等,如果相等,继续循环,否则返回到当前位置的子串即可。
代码
class Solution {
public String longestCommonPrefix(String[] strs) {
int arrNum = strs.length;
if(arrNum==0) return "";
int arrMinLen = Integer.MAX_VALUE;
for(int i=0; i<arrNum; i++){
arrMinLen = Math.min(arrMinLen, strs[i].length());
}
for(int i=0; i<arrMinLen; i++){
char val = strs[0].charAt(i);
for(int j=0; j<arrNum; j++){
if(strs[j].charAt(i)!=val){
return strs[0].substring(0, i);
}
}
}
return strs[0].substring(0, arrMinLen);
}
}