【LeetCode 14. Longest Common Prefix】
描述:
写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 ""。
示例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()
}