Leetcode 1408. String Matching in an Array

2021-07-01 10:30:07 浏览数 (1)

文章作者:Tyan 博客:noahsnail.com | CSDN | 简书

1. Description

2. Solution

  • Version 1
代码语言:javascript复制
class Solution:
    def stringMatching(self, words: List[str]) -> List[str]:
        result = set()
        length = len(words)
        flags = [0 for i in range(length)]
        for i in range(length):
            if flags[i]:
                continue
            for j in range(i 1, length):
                if flags[j]:
                    continue
                if len(words[i]) < len(words[j]):
                    if words[i] in words[j]:
                        flags[i] = 1
                        result.add(words[i])
                else:
                    if words[j] in words[i]:
                        flags[j] = 1
                        result.add(words[j])
        return result
  • Version 2
代码语言:javascript复制
class Solution:
    def stringMatching(self, words: List[str]) -> List[str]:
        words.sort(key=len) 
        result = set()
        length = len(words)
        for i in range(length):
            for j in range(i 1, length):
                if words[i] in words[j]:
                    result.add(words[i])
                    break
        return result

Reference

  1. https://leetcode.com/problems/string-matching-in-an-array/

0 人点赞