给定一种pattern(模式)和一个字符串str,判断str是否遵循相同的模式。这里的遵循指完全匹配,例如,pattern里的每个字母和字符串str 中的每个非空单词之间存在着双向连接的对应模式。
输入:pattern ="abba", str ="dog cat cat dog" 输出:true
输入:pattern ="abba", str ="dog cat cat fish" 输出:false
没有想到如何去做,借鉴大佬思路。
如:pattern ="abba", str ="dog cat cat dog" 对应 a-> dog b->cat true
如:pattern ="abba", str ="dog cat cat fish" 对应a->dog b->cat b->cat a->fish false
按模式字符串进行匹配,首先,如果当前键值在哈希表中存在而且映射的字符串与当前字符串不同,那么代表不匹配;接下来,如果当前字符串在哈希表中,映射了一个与当前键值不同的键,那么也代表不匹配,否则就更新哈希表,添加当前映射。最后,键值与字符串个数不匹配,那么也代表不匹配。