本文共 1845 字,大约阅读时间需要 6 分钟。
要解决这个问题,我们需要判断给定的两个字符串是否符合“Word Pattern”的模式。具体来说,给定一个模式字符串pattern和一个目标字符串str,判断str是否符合由pattern中的单词按照特定顺序重复排列而成的模式。
这种方法确保了每个单词的位置和顺序与pattern完全一致,从而有效地判断是否符合Word Pattern。
import java.util.HashMap;import java.util.Map;public class WordPattern { public static boolean wordPattern(String pattern, String str) { String[] patternWords = pattern.split(" "); String[] strWords = str.split(" "); if (patternWords.length != strWords.length) { return false; } Map wordMap = new HashMap<>(); for (int i = 0; i < patternWords.length; i++) { String word = patternWords[i]; if (wordMap.containsKey(word)) { if (wordMap.get(word) != i) { return false; } } else { wordMap.put(word, i); } } for (int i = 0; i < strWords.length; i++) { String word = strWords[i]; if (!wordMap.containsKey(word)) { return false; } if (wordMap.get(word) != i) { return false; } } return true; }} 这种方法确保了每个单词的位置和顺序与pattern完全一致,从而有效地判断是否符合Word Pattern。
转载地址:http://coyiz.baihongyu.com/