/*
兩層for循環(huán) "dog","racecar","car"
第一層循環(huán)第一個數(shù)的長度用于增加長度
第二個循環(huán) 遍歷每個數(shù)組的相同位置用于比較是否是相同芜果;
失敗 結(jié)果不對
class Solution {
? ? public String longestCommonPrefix(String[] strs) {
? ? ? ? if(strs == null || strs.length == 0) return "";
? ? ? ? int count;
? ? ? ? int i = 1;
? ? ? ? int len = Integer.MAX_VALUE;
? ? ? ? for(int j = 0; j < strs.length; j++) {
? ? ? ? ? ? len = Math.min(len, strs[j].length());
? ? ? ? }
? ? ? ? for(count = 0; count < len; ) {
? ? ? ? ? ? while(i < strs.length && str[0].charAt(count) == strs[i].charAt(count)) {
? ? ? ? ? ? ? ? i++;
? ? ? ? ? ? }
? ? ? ? ? ? //for(i = 1; i < strs.length; i++) {
? ? ? ? ? ? ? //? if(strs[0].charAt(count) != strs[i].charAt(count)) {
? ? ? ? ? ? ? ? //? ? break;
? ? ? ? ? ? ? ? //}
? ? ? ? ? ? //}
? ? ? ? ? ? if(i == strs.length - 1) {
? ? ? ? ? ? ? ? count++;
? ? ? ? ? ? ? ? continue;
? ? ? ? ? ? }else {
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? if(count == 0 && i != strs.length - 1) {
? ? ? ? ? ? return "";
? ? ? ? }else {
? ? ? ? ? ? return strs[0].substring(0,count);
? ? ? ? }
? ? }
}
*/
/*
思路 首先建立一個儲存prefix的string 把數(shù)組里面第一個數(shù)存進去
循環(huán) 整個數(shù)組
二層循環(huán) 循環(huán)數(shù)組中每個字符串與prefix比較 是否相同 把相同的部分更新成新的prefix旷太;
*/
class Solution {
? ? public String longestCommonPrefix(String[] strs) {
? ? ? ? if(strs == null || strs.length == 0) return "";
? ? ? ? String prefix = strs[0];
? ? ? ? for(int i = 1; i < strs.length; i++) {
? ? ? ? ? ? int j = 0;
? ? ? ? ? ? while(j < strs[i].length() && j < prefix.length() && strs[i].charAt(j) == prefix.charAt(j)) {
? ? ? ? ? ? ? ? j++;
? ? ? ? ? ? }
? ? ? ? ? ? if(j == 0) return "";
? ? ? ? ? ? prefix = prefix.substring(0,j);
? ? ? ? }
? ? ? ? return prefix;
? ? }
}