Leetcode 290. Word Pattern

Gary Chiang
1 min readJan 17, 2022

[easy]

Given a pattern and a string s, find if s follows the same pattern.

Here follow means a full match, such that there is a bijection between a letter in pattern and a non-empty word in s.

Example 1:

Input: pattern = "abba", s = "dog cat cat dog"
Output: true

Example 2:

Input: pattern = "abba", s = "dog cat cat fish"
Output: false

Example 3:

Input: pattern = "aaaa", s = "dog cat cat dog"
Output: false

Constraints:

  • 1 <= pattern.length <= 300
  • pattern contains only lower-case English letters.
  • 1 <= s.length <= 3000
  • s contains only lowercase English letters and spaces ' '.
  • s does not contain any leading or trailing spaces.
  • All the words in s are separated by a single space.

[Think]

  1. to check the pattern match, I thought transfer string s to the pattern first. However, if pattern had same character, it will transfer to wrong result.
  2. if the string had some new letter other than the pattern, it won’t show the different
  3. Therefore, I use two transform function to change them into a new String. And compare the two string follow the same pattern or not.
  4. Leetcode descustion had shorter version of the answer

[Gary]

--

--

Gary Chiang

CS new grad, 6 years experience related to supply chain management. Located in Bay area