LeetCode 290 Word Pattern
来源:互联网 发布:现货白银指标公式源码 编辑:程序博客网 时间:2024/06/05 03:15
题目描述
Given a pattern and a string str, find if str 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 str.
Examples:
- pattern = “abba”, str = “dog cat cat dog” should return true.
- pattern = “abba”, str = “dog cat cat fish” should return false.
- pattern = “aaaa”, str = “dog cat cat dog” should return false.
- pattern = “abba”, str = “dog dog dog dog” should return false.
Notes:
You may assume pattern contains only lowercase letters, and str contains lowercase letters separated by a single space.
Credits:
Special thanks to @minglotus6 for adding this problem and creating all test cases.
分析
保证1对1的映射关系
代码
public boolean wordPattern(String pattern, String str) { if (pattern == null || str == null) { return false; } String[] strs = str.split(" "); if (pattern.length() != strs.length) { return false; } Map<Character, String> map = new HashMap<Character, String>(); for (int i = 0; i < pattern.length(); i++) { char c = pattern.charAt(i); if (map.containsKey(c)) { if (!map.get(c).equals(strs[i])) { return false; } } else { // 保证1对1的映射 if (map.containsValue(strs[i])) { return false; } map.put(c, strs[i]); } } return true; }
2 0
- leetcode 290: Word Pattern
- [leetcode 290]Word Pattern
- LeetCode 290 Word Pattern
- [LeetCode 290] Word Pattern
- leetcode 290 Word Pattern
- [leetcode 290] Word Pattern
- LeetCode 290 Word Pattern
- 【LEETCODE】290-Word Pattern
- LeetCode 290:Word Pattern
- leetcode 290 Word Pattern
- leetcode 290: Word Pattern
- 【LeetCode-290】Word Pattern
- LeetCode 290 Word Pattern
- leetcode 290:Word Pattern
- LeetCode[290] Word Pattern
- Leetcode 290 Word Pattern
- [leetcode][290]Word Pattern
- leetcode-290-Word Pattern
- LeetCode 263:Ugly Number
- 【100字自我总结】
- 关于小圆点的制作(About how to make the dots)(-)
- nc在centos7上的安装和简单使用
- 迪卡尔曲线
- LeetCode 290 Word Pattern
- 日常总结 之 angular copy 深拷贝
- PHP生成TXT文件并自动下载
- oracle 索引字段包含date类型,使用spring jdbc更新时不走索引,而是走table access full的问题
- C/C++语言字符串操作总结大全(超详细)
- jquery与django实现ajax通信
- maven debug时,第三方jar包 source not found
- 带参数的函数main()
- Android Fragment全攻略