290.单词规律
链接:290.单词规律
难度:Easy
标签:哈希表、字符串
简介:给定一种规律 pattern 和一个字符串 str ,判断 str 是否遵循相同的规律。
题解 1 - typescript
- 编辑时间:2020-12-16
- 执行用时:104ms
- 内存消耗:40.2MB
- 编程语言:typescript
- 解法介绍:利用哈希表和 set 储存已遍历过的值。
function wordPattern(pattern: string, s: string): boolean {
  const cache: Record<string, string> = {};
  const set = new Set<string>();
  const arr = s.split(' ');
  const len = arr.length;
  if (len !== pattern.length) return false;
  for (let i = 0; i < len; i++) {
    const p = pattern[i];
    const str = arr[i];
    if (!cache[p] && !set.has(str)) {
      cache[p] = str;
      set.add(str);
    } else if (cache[p] !== str) return false;
  }
  return true;
}