最長公共字首
一、要求
編寫一個函數來查找字元串數組中的最長公共字首。
如果不存在公共字首,傳回空字元串
""
。
示例 1:
輸入: ["flower","flow","flight"]
輸出: "fl"
示例 2:
輸入: ["dog","racecar","car"]
輸出: ""
解釋: 輸入不存在公共字首。
說明:
二、思路
三、代碼實作
public String longestCommonPrefix(String[] strs) {
if (strs == null || strs.length == 0) {
return "";
}
//取出數組中元素的最小長度
int min = Integer.MAX_VALUE;
for (String temp : strs) {
int len = temp.length();
if (len < min) {
min = len;
}
}
StringBuilder sb = new StringBuilder();
//對應位置上的字元是否相等的标記,預設相等,當某一次比較中不相等的話,退出所有循環
boolean flag = true;
for (int i = 0; i < min&&flag; i++) {
char s = strs[0].charAt(i);
for (int j = 1; j < strs.length; j++) {
if (s != strs[j].charAt(i)) {
flag = false;
break;
}
}
if (flag) {
sb.append(s);
}
}
return sb.toString();
}