leetcode-14 最长公共前缀
编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 ""。
示例 1:
输入:strs = ["flower","flow","flight"]
输出:"fl"
示例 2:
输入:strs = ["dog","racecar","car"]
输出:""
解释:输入不存在公共前缀。
提示:
- 1 <= strs.length <= 200
- 0 <= strs[i].length <= 200
- strs[i] 仅由小写英文字母组成
Go实现:
func longestCommonPrefix(strs []string) string {
// 输入数组判空检查,为空则返回空字符串
n := len(strs)
if n == 0 {
return ""
}
// 初始化数组第一个字符串tmpStr作为基准进行后续比较,同时定义并初始化返回结果publicPrefix
tmpStr, publicPrefix := strs[0], ""
// 外层循环检查基准字符串每个字符,内层循环检查当前比较字符和其他数组元素同个位置字符,如果与当前字符不相同或是在其他数组元素中不存在,则直接返回
for i := 0; i < len(tmpStr); i++ {
for j := 0; j < n; j++ {
if i >= len(strs[j]) || tmpStr[i] != strs[j][i] {
return publicPrefix
}
}
// 更新公共前缀
publicPrefix += string(tmpStr[i])
}
// 循环结束后返回结果
return publicPrefix
}
本文作者:505donkey
本文链接:https://www.cnblogs.com/505donkey/p/18514772
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步