Word Pattern
来源:互联网 发布:linux中怎么复制文件 编辑:程序博客网 时间:2024/06/12 00:01
题目:
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 inpattern
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.
str中的字符串数
代码:
class Solution {public: bool wordPattern(string pattern, string str) { int patternlength=pattern.length(); int strlength=str.length(); string patterntable[30]; for(int i=0; i<30; i++) { patterntable[i]=""; } int start=0; size_t index; string patternstr; int cnt=0; string cmpstr; int flag=0; for(int i=0; i<patternlength; i++) { patternstr=patterntable[pattern[i]-'a']; int j; for(j=cnt; j<strlength; j++) { if(str[j]==' ') { cmpstr=str.substr(cnt,j-cnt); cnt=j+1; break; } } if(flag==1) { return false; } if(j==strlength&&flag==0) { flag=1; cmpstr=str.substr(cnt,strlength-cnt); } if(patternstr=="") { for(int k=0; k<30; k++) { if(cmpstr==patterntable[k]) { return false; } } patterntable[pattern[i]-'a']=cmpstr; } else if(patternstr!=cmpstr) { return false; } else { continue; } } if(flag==0) return false; return true; }};
0 0
- Word Pattern
- Word Pattern
- Word Pattern
- Word Pattern
- Word Pattern
- Word Pattern
- Word Pattern
- Word Pattern
- Word Pattern
- Word Pattern
- Word Pattern
- Word Pattern
- word pattern
- Word Pattern
- Word Pattern
- Word Pattern
- Word Pattern
- Word Pattern
- 增强for循环不止是语法上的优雅
- 聚类算法评价指标:Purity、NMI、MI、entropy、precision、recall、F值、RI值
- MySQL读书笔记-安装初始化操作
- DispatcherServlet 源码阅读(1)
- 一种赋值方式
- Word Pattern
- 【C++】STL常用容器总结之一:容器与迭代器
- java算法(一)——排序算法(下)之 合并排序
- 自定义VC作为iOS程序的RootVC
- Pods-frameworks.sh: No such file or directory、Pods-resources.sh: No such file or directory
- android webview设置内容的字体大小
- liunxqu安装nginx
- 阻塞赋值和非阻塞赋值
- Leptonica --> tesseract --> OpenCV