美文网首页
最长公共前缀

最长公共前缀

作者: 韩小禹 | 来源:发表于2020-03-15 23:47 被阅读0次
package main

import "fmt"

func LongestCommonPrefix(strArr []string) string {
    arrLen := len(strArr)
    if arrLen == 0 {
        return ""
    }
    //先找出数组中最短的那个字符串,因为最长公共前缀的长度一定是小于或者等于最短的那个字符串的长度
    shortStr := strArr[0]
    for x := 1; x < arrLen; x++ {
        if len(strArr[x]) < len(shortStr) {
            shortStr = strArr[x]
        }
    }
    //然后根据最短字符串的个数遍历
    for k, v := range shortStr {
        for j := 0; j < arrLen; j++ {
            if strArr[j][k] != byte(v) {
                return string(strArr[j][:k])
            }
        }
    }
    return shortStr
}

func main() {
    str := []string{"flower", "flow", "flight", "f"}
    res := LongestCommonPrefix(str)
    fmt.Println(res)
}

相关文章

  • 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/dogiehtx.html