美文网首页程序员
最长公共前缀

最长公共前缀

作者: yellowone | 来源:发表于2020-06-15 18:12 被阅读0次

编写一个函数来查找字符串数组中的最长公共前缀。
如果不存在公共前缀,返回空字符串 ""。
示例 1:
输入: ["flower","flow","flight"]
输出: "fl"
示例 2:
输入: ["dog","racecar","car"]
输出: ""
解释: 输入不存在公共前缀。
说明:
所有输入只包含小写字母 a-z 。

思路很简单,一个index去记录比较到了第几位,一位一位比较过去,减少比较次数,用strings.Builder{}弄个缓存区减少字符串的修改耗时。

package main

import (
    "fmt"
    "strings"
)

func main() {
    fmt.Printf("%+v\n",longestCommonPrefix([]string{"dog","racecar","car"}))
}

func longestCommonPrefix(strs []string) string {
    if len(strs) <= 0 {
        return ""
    }
    index := 0
    result := strings.Builder{}
    for {
        letter := ""
        for _, str := range strs {
            if len(str) <= index {
                letter = ""
                break
            }
            if len(letter) <= 0 {
                letter = str[index : index+1]
                continue
            }
            if str[index:index+1] != letter {
                letter = ""
                break
            }
        }
        index ++
        if len(letter) <= 0 {
            break
        }
        result.WriteString(letter)
    }
    return result.String()
}

相关文章

  • LeetCode 每日一题 [19] 最长公共前缀

    LeetCode 最长公共前缀 [简单] 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回...

  • 14. 最长公共前缀

    20180923-摘抄自14. 最长公共前缀 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,...

  • 5,最长公共前缀/数组与字符串

    最长公共前缀 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例 1:...

  • Swift 最长公共前缀 - LeetCode

    题目: 最长公共前缀 描述: 编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""...

  • leetcode探索之旅(14)

    最长公共前缀 编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。 示例 1: ...

  • Leetcode 14 最长公共前缀

    最长公共前缀 题目 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例...

  • LeetCodeSwift 14.Longest Common

    题目 最长公共前缀 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 ""。 示例...

  • [day4] [LeetCode] [title14,122]

    14.最长公共前缀 编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串""。 示例 ...

  • 14. 最长公共前缀

    14. 最长公共前缀 编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。 说明...

  • leetcode算法-最长公共前缀

    最长公共前缀 编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。 说明:所有输...

网友评论

    本文标题:最长公共前缀

    本文链接:https://www.haomeiwen.com/subject/wuuhxktx.html