思路:每次从字符数组中读取两个字符串比较。需要注意输入字符串为空,等细节。
1 public String longestCommonPrefix(String[] strs) { 2 if(strs==null||strs.length==0){ 3 return ""; 4 } 5 int count=strs[0].length(); 6 for(int i=1;i<strs.length;i++){ 7 String str1=strs[i-1]; 8 String str2=strs[i]; 9 int len=Math.min(str1.length(),str2.length()); 10 if(len<count){ 11 count=len; 12 } 13 int comNum=0; 14 for(int j=0;j<count;j++){ 15 if(str1.charAt(j)==str2.charAt(j)){ 16 comNum++; 17 }else{ 18 break; 19 } 20 } 21 if(comNum<count){ 22 count=comNum; 23 } 24 25 } 26 if(count==0){ 27 return ""; 28 } 29 return strs[0].substring(0, count); 30 }
时间: 2024-10-11 00:03:47