From 2bd5b2ef93187a8331a3db4261994e3eec85c4d7 Mon Sep 17 00:00:00 2001 From: Breno Baptista Date: Mon, 20 Dec 2021 20:48:09 -0300 Subject: [PATCH] Updated README --- leetcode/0014.Longest-Common-Prefix/README.md | 27 +++++++------------ 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/leetcode/0014.Longest-Common-Prefix/README.md b/leetcode/0014.Longest-Common-Prefix/README.md index 4b84298b..26b9e03b 100644 --- a/leetcode/0014.Longest-Common-Prefix/README.md +++ b/leetcode/0014.Longest-Common-Prefix/README.md @@ -40,25 +40,18 @@ If there is no common prefix, return an empty string "". package leetcode -import "sort" - func longestCommonPrefix(strs []string) string { - sort.Slice(strs, func(i, j int) bool { - return len(strs[i]) <= len(strs[j]) - }) - minLen := len(strs[0]) - if minLen == 0 { - return "" - } - var commonPrefix []byte - for i := 0; i < minLen; i++ { - for j := 1; j < len(strs); j++ { - if strs[j][i] != strs[0][i] { - return string(commonPrefix) + 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[0:j] + break } } - commonPrefix = append(commonPrefix, strs[0][i]) } - return string(commonPrefix) + + return prefix } -``` \ No newline at end of file +```