描述:
寫一個函數來查找字符串數組中的最長公共前綴。
如果不存在公共前綴,返回空字符串 “”。
示例1:
輸入: ["flower","flow","flight"]
輸出: "fl"
示例2:
輸入: ["dog","racecar","car"]
輸出: ""
解釋: 輸入不存在公共前綴。
注意:
所有輸入只包含小寫字母 a-z
。
Kotlin代碼實現
fun longestCommonPrefix(strs: Array<String>): String? {
if (strs.isEmpty()) {
return ""
}
if (strs.size == 1) {
return strs[0]
}
val prefix = StringBuilder()
var length = strs[0].length
for (str in strs) {
if (str.length < length) {
length = str.length
}
}
for (i in 0 until length) {
val ch = strs[0][i]
for (j in 1 until strs.size) {
if (strs[j][i] != ch) {
return prefix.toString()
}
}
prefix.append(ch)
}
return prefix.toString()
}