290. 单词规律
难度:简单🌟🌟🌟
给定一种规律 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
包含了由单个空格分隔的小写字母。
题解:
利用哈希表
判断字符与字符串之间是否恰好一一对应。即任意一个 p a t t e r n pattern pattern 中的字符都对应着唯一的 s t r str str 中的字符串,任意一个 s t r str str 中的字符串也只被唯一的一个 p a t t e r n pattern pattern 中的字符对应。
双向连接意味着, a a a 只对应着 d o g dog dog ,且 d o g dog dog 也只对应着 a a a ,因此在双向连接的对应规律下,上述的