本文共 891 字,大约阅读时间需要 2 分钟。
给定一种规律 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, str: str) -> bool: s = str.split() if len(pattern) != len(s): return False info = { } for idx, (k, v) in enumerate(zip(pattern, s)): if not info.get(pattern[idx]): if s[idx] in info.values(): return False info[pattern[idx]] = v else: if info.get(pattern[idx]) != v: return False return True
转载地址:http://rvxdz.baihongyu.com/