Word Pattern
Given apatternand a stringstr, find ifstrfollows the same pattern.
Here follow means a full match, such that there is a bijection between a letter inpatternand a non-empty word instr.
Example
Example 1:
Input: pattern = "abba", str = "dog cat cat dog"
Output: trueExample 2:
Input:pattern = "abba", str = "dog cat cat fish"
Output: falseExample 3:
Input: pattern = "aaaa", str = "dog cat cat dog"
Output: falseExample 4:
Input: pattern = "abba", str = "dog dog dog dog"
Output: falseNotes:
You may assumepatterncontains only lowercase letters, andstrcontains lowercase letters separated by a single space.
Note
建立mapping:key是character,value是word
set记录出现的word
必须是双向映射:
当key存在,mapping对应的单词不相同时,就false
当value存在,mapping对应的字符不存在,就false
Time:O(n) - pattern length
Space:O(n)
Code
Last updated