题目来源:https://leetcode.com/problems/word-pattern
题目难度:Easy
解答1[Java]:
1 | class Solution { |
思路
本解法是借助了 Java 的 HashMap
的特性。HashMap 的 put()
操作,如果 key 已经存在,那么就覆盖掉 key 原来的 value,并把原来的 value 当作返回值。
所以如果两个字符串模式相同,只要按顺序执行 put()
,两个字符串执行中的返回值应该相同。
解答2[Java]:
1 | class Solution { |
思路
使用字符串数组来进行判断。
第一遍是确定,如果 pattern 中有相同字母,那么 str 对应位置的字符串是否相同。
第二遍是确定,如果 pattern 中每个字母都不相同,那么 str 每个位置的字符也不能相同,如果相同,就不符合题意。