LeetCode Word Pattern
2016-03-23 21:14
387 查看
Given a
Here follow means a full match, such that there is a bijection between a letter in
Examples:
pattern =
pattern =
pattern =
pattern =
Notes:
You may assume
题目的大致意思是:给两个字符串,其中一个表示轨迹,检查第二个字符串是否符合第一个轨迹而存在,如果两者轨迹相同返回true,不同则返回false。 其中注意:pattern="aaaa",str="aa aa aa aa aa aa"两者轨迹并不相同
patternand a string
str, find if
strfollows the same pattern.
Here follow means a full match, such that there is a bijection between a letter in
patternand 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
patterncontains only lowercase letters, and
strcontains lowercase letters separated by a single space.
题目的大致意思是:给两个字符串,其中一个表示轨迹,检查第二个字符串是否符合第一个轨迹而存在,如果两者轨迹相同返回true,不同则返回false。 其中注意:pattern="aaaa",str="aa aa aa aa aa aa"两者轨迹并不相同
class Solution { public: bool wordPattern(string pattern, string str) { auto beg = begin(str), en = end(str); string::iterator mid=beg; map<char, string> ma; for (unsigned i = 0;i < pattern.size();++i) { for (;mid != en && ((*mid) != ' ');++mid); if(ma.find(pattern[i])==ma.end()) ma[pattern[i]] = string(beg, mid); if (ma.find(pattern[i]) != ma.end() && ma[pattern[i]] != string(beg, mid)) return false; if(mid!=en) beg = ++mid; } map<string, char> test; for (auto e : ma) test[e.second] = e.first; if (ma.size( )!= test.size()||mid!=en) return false; return true; } };
相关文章推荐
- linux读书笔记(5章)
- 自适应网页设计的方法
- Android TabLayout、ViewPager实现顶部和底部Tab导航 点击滑动切换Tab页面
- 可靠信号和不可靠信号的测试
- 杭电 Problem1787 GCD Again
- Nginx [error]: invalid PID number "" in "/var/run/
- 线性表相关编程题练习
- 数据库连接信息写在properties文件
- 试探算法_随机生成彩票号码
- 四则运算四
- 有时我们不需要过多的假设
- fragment坑
- 【面试笔试算法】Problem 8: 然而沼跃鱼早就看穿了一切(hiho题库)
- PAT (Advanced Level) Practise 1078 Hashing (25)
- 【面试笔试算法】Problem 8: 然而沼跃鱼早就看穿了一切(hiho题库)
- (转)怎么把主机的文件复制到虚拟机上
- 数据持久化
- poj 1753 状态压缩+bfs
- 析构函数
- MySQL二级等级考试归纳——PHP篇