美文网首页
LeetCode 290 单词模式

LeetCode 290 单词模式

作者: CaesarsTesla | 来源:发表于2018-09-10 22:05 被阅读33次

题目在这
不需要使用两个哈希表就可以实现,具体思路是使用pattern中的值作为key,使用str中的值作为value,然后进行判断处理

swift实现

//: Playground - noun: a place where people can play
func WordPattern(_ pattern : String, _ str : String) -> Bool{
    let strArr = str.split(separator: " ")
    var dic = [Character : String]()
  
    if strArr.count != pattern.characters.count || Set(strArr).count != Set(pattern.characters).count{//"abba","mu mu mu mu"
        return false
    }
    
    for (i,v) in pattern.characters.enumerated(){
        if dic[v] == nil{
            dic[v] = String(strArr[i])
        }else{
            if dic[v] != String(strArr[i]) {
                return false
            }
        }
    }
    return true
}
WordPattern("aass", "mu mu dy dy")


python实现

#-*- coding:utf-8 -*-
#@Filename:leetcode290
#@Date:2018-09-10 20:44
#@auther:Mudy
#@E-mail:2808050775@qq.com
#@Blog:txmudy.cn

class Solution(object):
    def wordPattern(self, pattern, str):
        """
        :type pattern: str
        :type str: str
        :rtype: bool
        """
        dic = {}
        strArr = str.split(" ")
        if len(strArr) != len(pattern) or  len(set(strArr)) != len(set(pattern)):# "abba","mu mu mu mu"
            return False

        for i, v in enumerate(pattern):
            if v not in dic:
                dic[v] = strArr[i]
            else:
                if  dic[v] != strArr[i] :
                    print(dic[v],strArr[i],end="\n")
                    return False
        return True



if __name__ == "__main__":
    s = Solution()
    print(s.wordPattern("aabb","mudy mudy mudy mudy"))

相关文章

  • LeetCode 290 单词模式

    题目在这不需要使用两个哈希表就可以实现,具体思路是使用pattern中的值作为key,使用str中的值作为valu...

  • 每日一题20201216(290. 单词规律)

    290. 单词规律[https://leetcode-cn.com/problems/word-pattern/]...

  • leetcode--290--单词规律

    题目:给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。 这里的 遵循 指完...

  • Leetcode 290. 单词规律

    给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。 这里的 遵循 指完全匹配...

  • 290. 单词模式

    内容 给定一种 pattern(模式) 和一个字符串 str ,判断 str 是否遵循相同的模式。 这里的遵循指完...

  • 290. 单词模式

    给定一种 pattern(模式) 和一个字符串 str ,判断 str 是否遵循相同的模式。 这里的遵循指完全匹配...

  • 290-单词模式

    给定一种pattern(模式)和一个字符串str,判断str是否遵循相同的模式。这里的遵循指完全匹配,例如,pat...

  • LeetCode-290. 单词规律(Swift)

    来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/word-p...

  • 2019-02-09

    LeetCode 290. Word Pattern Description Given a pattern an...

  • 290. 单词模式(Python)

    题目 难度:★★☆☆☆类型:字符串 给定一种 pattern(模式) 和一个字符串 str ,判断 str 是否遵...

网友评论

      本文标题:LeetCode 290 单词模式

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