zoukankan      html  css  js  c++  java
  • 【leetcode 简单】 第七十七题 单词模式

    给定一种 pattern(模式) 和一个字符串 str ,判断 str 是否遵循相同的模式。

    这里的遵循指完全匹配,例如, pattern 里的每个字母和字符串 str 中的每个非空单词之间存在着双向连接的对应模式。

    示例1:

    输入: pattern = "abba", str = "dog cat cat dog"
    输出: true

    示例 2:

    输入:pattern = "abba", str = "dog cat cat fish"
    输出: false

    示例 3:

    输入: pattern = "aaaa", str = "dog cat cat dog"
    输出: false

    示例 4:

    输入: pattern = "abba", str = "dog dog dog dog"
    输出: false

    说明:
    你可以假设 pattern 只包含小写字母, str 包含了由单个空格分隔的小写字母。    

    class Solution:
        def wordPattern(self, pattern, str):
            """
            :type pattern: str
            :type str: str
            :rtype: bool
            """
            pattern_len=len(pattern)
    
            str_list = str.split(' ')
            str_len = len(str_list)
    
            if pattern_len != str_len:
                return False
            if len(set(pattern)) != len(set(str.split(' '))):
                return False
            result = {}
            for i in range(pattern_len):
                if pattern[i] not in result:
                    result[pattern[i]] = str_list[i]
                if pattern[i] in result:
                    if result[pattern[i]] != str_list[i]:
                        return False
            return True

  • 相关阅读:
    Mysql 基础
    Python Cdn平台文件md5验证
    Linux内存cache/buffer剖析
    wget
    UTV
    智能DNS解析之edns-client-subnet篇
    Python Django
    OpenSSL SNI
    Python 基础(一)
    Python ORM
  • 原文地址:https://www.cnblogs.com/flashBoxer/p/9532417.html
Copyright © 2011-2022 走看看