《leetCode》:Word Pattern
来源:互联网 发布:西方记者知乎 编辑:程序博客网 时间:2024/05/20 22:26
题目
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.
思路
这个题用java来实现是比较简单的,利用前后指针逐一比较即可,如果模式中前后指针所指向的字符相等或不相等,则字符串中的单词也要相等或不相等。否则返回false。
public boolean wordPattern(String pattern, String str) { String []s=str.split(" "); char []chArr=pattern.toCharArray(); int len=chArr.length; if(s.length!=len){//如果长度不相等,则肯定不会匹配此模式。 return false; } int start=0; int end=len-1; while(start<end){ if((chArr[start]==chArr[end]&&s[start].equals(s[end])||(chArr[start]!=chArr[end]&&!s[start].equals(s[end])))){//要么都相等,要么都不相等 start++; end--; } else{ return false; } } Set<Character> set=new HashSet<Character> (); for(char ch:chArr){ set.add(ch); } Set<String> set1=new HashSet<String>(); for(String ss:s){ set1.add(ss); } if(set1.size()==set.size()){ return true; } return false; }
1 0
- leetcode | Word Pattern
- 【leetcode】290. Word Pattern
- leetcode 290: Word Pattern
- [Leetcode]Word Pattern
- [leetcode 290]Word Pattern
- LeetCode 290 Word Pattern
- 【leetcode】290. Word Pattern
- [LeetCode 290] Word Pattern
- leetcode 290 Word Pattern
- LeetCode 2 Word Pattern
- leetcode word-pattern
- leetcode: Word Pattern
- leetcode:Word Pattern
- [Leetcode]Word Pattern
- LeetCode Word Pattern
- LeetCode-Word Pattern
- LeetCode:Word Pattern
- leetcode之Word Pattern
- lintCode(469)——等价二叉树
- 解决“Dynamic Web Module 3.0 requires Java 1.7 or newer.”错误
- 关于Resultset的一些知识
- 经典SQL语句大全
- ARM处理器模式切换(含MRS,MSR指令)
- 《leetCode》:Word Pattern
- 每日之学(2016.04.08)
- HTTP Status 404 - The requested resource is not available.
- Xcode中帮助文档的位置
- 2016-04-08
- hdoj-1228-A+B
- yii验证规则,model中的rules验证的汇总
- MyBatis (4)——解决字段名与实体类属性名不相同的冲突
- 二维码原理介绍