題目:編寫一個函數來查找字符串數組中的最長公共前綴。
如果不存在公共前綴,返回空字符串""。
? ? ? ? ? ? ? ? ? ? ? ?
解題思路:橫向掃描,依次遍歷每個字符串,更新最長公共前綴。另一種方法是縱向掃描。縱向掃描時,從前往后遍歷所有字符串的每一列,比較相同列上的字符是否相同,如果相同則繼續對下一列進行比較,如果不相同則當前列不再屬于公共前綴,當前列之前的部分為最長公共前綴。
class Solution{public String longestCommonPrefix(String[] strs){if(strs==null||strs.length==0){return ""; } int length=strs[0].length();int count=strs.length;for(int i=0;i<length;i++){char c=strs[0].charAt(i);for(int j=1;j<count;j++){if(i==strs[j].length()||strs[j].charAt(i)!=c){return strs[0].substring(0,i); } } } return strs[0];}
}