编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 ""。
示例 1:
输入: ["flower","flow","flight"] 输出: "fl"
示例 2:
输入: ["dog","racecar","car"] 输出: "" 解释: 输入不存在公共前缀。
说明:
所有输入只包含小写字母 a-z 。
class Solution {
func longestCommonPrefix(_ strs: [String]) -> String {
if strs.count == 0 {
return ""
}
var minLength = strs[0].count
for str in strs{
if str.count < minLength{
minLength = str.count
}
}
if minLength == 0 {
return ""
}
var res = String()
for i in 0...minLength-1 {
var j = 0
for str in strs {
let c = str[str.index(str.startIndex, offsetBy: i)]
if j == 0{
res.insert(c, at: res.index(res.startIndex, offsetBy: i))
}else{
let resC = res[res.index(res.startIndex, offsetBy: i)]
if c == resC{
continue
}else{
res.remove(at: res.index(res.startIndex, offsetBy: i))
return res
}
}
j += 1
}
}
return res
}
}
本文介绍了一个实用的函数,用于寻找一组字符串中的最长公共前缀。通过遍历和比较,该函数能够高效地确定并返回公共前缀,若无公共部分则返回空字符串。示例展示了其在不同情况下的应用。
178

被折叠的 条评论
为什么被折叠?



