LeetCode 290 : Word Pattern (Java)
来源:互联网 发布:linux下刻录数据光盘 编辑:程序博客网 时间:2024/06/04 23:34
解题思路:用一个map来存放模式和单词的对应形式,注意由于模式和单词是双向匹配,所以如果来了一个新的模式和单词对应形式,要查看map的keys里面是否已经存在该模式,如果存在,再检查该模式对应的单词是否和新单词一样,如果不一样,返回false。如果不存在该模式,则检查map的values里面是否已经存在该单词,如果存在,则说明对应该单词的模式和新来的模式不一样,返回false。如果map里即不存在该模式也不存在该单词,则将其加入map中。
public class Solution { public boolean wordPattern(String pattern, String str) { Map<Character, String> map = new HashMap<>(); String[] s = str.split(" "); if(s.length != pattern.length()) return false; for(int i=0;i<pattern.length();i++) { char c = pattern.charAt(i); if(map.keySet().contains(c)) { if(!map.get(c).equals(s[i])) return false; } else if(map.values().contains(s[i])){ return false; } else { map.put(c, s[i]); } } return true; }}
0 0
- [leetcode-290]Word Pattern(java)
- LeetCode 290 : Word Pattern (Java)
- 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
- 面向对象设计
- 在Stuts2中保存登录信息
- 删除RHEL 6.7 的RHN注册和订阅提示
- jQuery Ajax 实例 ($.ajax、$.post、$.get)
- Android JSON
- LeetCode 290 : Word Pattern (Java)
- NSArray
- html中offsetTop、clientTop、scrollTop、offsetTop各属性介绍
- iOS 简单实现毛玻璃效果
- Java 循环
- 视频客观质量评价模型性能的评估方法
- 【DX11习题学习二】第六章练习 Drawing in Direct3D(上)
- 使用servlet 3.0 新特性 @WebServlet(urlPatterns = "/brainT") 访问 url,服务器报404错误
- VC操作INI文件 ,INI文件操作总结,如何操作INI文件,INI文件使用方法小结