目录

14. 最长公共前缀

编写一个函数来查找字符串数组中的最长公共前缀。

如果不存在公共前缀,返回空字符串 ""

示例 1:

1
2
输入:strs = ["flower","flow","flight"]
输出:"fl"

示例 2:

1
2
3
输入:strs = ["dog","racecar","car"]
输出:""
解释:输入不存在公共前缀。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
func longestCommonPrefix(strs []string) string {
   prefix := strs[0] // 先随便找一个作为前缀 在遍历过程中再慢慢剔除

   for i := 1; i < len(strs); i++ {
      // 遍历每个字符串
      for j := 0; j < len(prefix); j++ {
         // 遍历每个前缀字母
         if len(strs[i]) <= j || strs[i][j] != prefix[j] {
            prefix = prefix[:j]
            break
         }
      }
   }
   return prefix
}