当前位置:网站首页>力扣每日一题-第44天-290. 单词规律
力扣每日一题-第44天-290. 单词规律
2022-08-01 07:25:00 【重邮研究森】
2022.7.31今天你刷题了吗?
题目:
给定一种规律 pattern 和一个字符串 s ,判断 s 是否遵循相同的规律。
这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 s 中的每个非空单词之间存在着双向连接的对应规律。
分析:
给定两个字符串,需要判断它们是否满足匹配条件,举例如下:
“aabb” “cat cat dog dog”
相当于a=cat b=dog,则满足条件
“aabb” “cat dog cat dog”
因为a=cat,后面又有a=dog,则不满足
“aab” “cat cat cat cat”
数量对不上,不满足
因此,对于“cat cat”字符串,我们先把他保存在vector中,然后遍历“aabb”字符串,每次遍历需要判断两个条件。1.“aabb”中已经存在并且当前的aabb对应的cat不一样,则返回fasle。
2.“aabb”中不存在并且但前的cat也存在,则返回false
解析:
class Solution {
public:
bool wordPattern(string pattern, string s) {
unordered_map<char, string>u1;
vector<string>vec;
string s1;
for (int i = 0; i < s.size(); i++)
{
if (s[i] != ' ')
{
s1 += s[i];
}
else
{
vec.push_back(s1);
s1.clear();
}
}
vec.push_back(s1);
s1.clear();
if (pattern.size() != vec.size())
{
return false;
}
for (int i = 0; i < pattern.size(); i++)
{
if (u1.count(pattern[i]) && u1[pattern[i]] != vec[i])//aa存在,并且aa对于的值和现在不一样
{
return false;
}
else if (!(u1.count(pattern[i])))
{
for (auto it : u1)
{
if (it.second == vec[i])
{
return false;
}
}
}
u1[pattern[i]] = vec[i];
}
return true;
}
};
边栏推荐
猜你喜欢
我说过无数遍了:从来没有一种技术是为灵活组合这个目标而设计的
Zero-code website development tool: WordPress
我三本学历,五面阿里,被面试官“供”着出来了,拿了33*15的Offer
爬虫基本原理介绍、实现以及问题解决
旋度(7)连接失败localhost8080;连接拒绝了
爆肝3万字,最硬核丨Mysql 知识体系、命令全集 【建议收藏 】
响应式织梦模板园林花卉类网站
升级为重量级锁,锁重入会导致锁释放?
special day to remember
"By sharing" northwestern university life service | | bytes a second interview on three sides by HR
随机推荐
Srping中bean的生命周期
表的创建、修改与删除
05-SDRAM: Arbitration
Golang: go open web service
七夕来袭——属于程序员的浪漫
图片无损压缩软件哪个好用:试试完全免费的JPG-C 图片批量修整压缩减肥工具吧 | 最新jpg批量修整工具下载
MVVM项目开发(商品管理系统一)
Guest brush SQL - 2
好的plm软件有哪些?plm软件排行榜
NIO编程
crypto-js uses
How to generate and configure public key certificate in Alipay
Generate pictures based on the content of the specified area and share them with a summary
"By sharing" northwestern university life service | | bytes a second interview on three sides by HR
测试工具(四)Jenkins环境搭建与使用
Bean的生命周期
Data organization -- singly linked list of the linear table
05-SDRAM:仲裁
史上超强最常用SQL语句大全
金山打字通 官网 下载