0290. Word Pattern #
题目 #
- 给定一种规律
pattern
和一个字符串s
,判断s
是否遵循相同的规律。 - 这里的 遵循 指完全匹配,例如,
pattern
里的每个字母和字符串s
中的每个非空单词之间存在着双向连接的对应规律。
思路 #
哈希 #
代码 #
哈希 #
class Solution {
public boolean wordPattern(String pattern, String s) {
String[] words = s.split(" ");
if (pattern.length() != words.length) return false;
Map<Character, String> map = new HashMap<>();
for (int i = 0; i < pattern.length(); i++) {
char pat = pattern.charAt(i);
String word = words[i];
if (map.contains(pat) && map.get(pat).equals(word) == false) return false;
else if (map.contains(pat) == false && map.containsValue(word)) return false;
map.put(pat, word);
}
return true;
}
}