原题地址:https://leetcode-cn.com/problems/longest-common-prefix/
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 “”。
示例:
输入:strs = [“flower”,“flow”,“flight”]
输出:“fl”
思路:先找到最短字符串,然后以该字符串为公共子串的匹配起点,当存在不以该子串为前缀的情况则子串字符减一。
class Solution {
public String longestCommonPrefix(String[] strs) {
String res = "";
int max = 200;
if(strs.length==0) return res;
if(strs.length==1) return strs[0];
for(String s:strs){ //找到最小子串
if(s.length()<max){
max=s.length();
res=s;
}
}
for(int i=0;i<strs.length;i++){
if(!strs[i].startsWith(res)){
res=res.substring(0,res.length()-1);
i--;
}
}
return res;
}
}
青古の每篇一歌
《琴师》
灯辉摇曳满都城听着雨
夜风散开几圈涟漪