当前位置: 首页 > news >正文

C++ 同构字符串/ 单词规律

给定两个字符串 s 和 t ,判断它们是否是同构的。

如果 s 中的字符可以按某种映射关系替换得到 t ,那么这两个字符串是同构的。

每个出现的字符都应当映射到另一个字符,同时不改变字符的顺序。不同字符不能映射到同一个字符上,相同字符只能映射到同一个字符上,字符可以映射到自己本身。

示例 1:

输入:s = "egg", t = "add"
输出:true

示例 2:

输入:s = "foo", t = "bar"
输出:false

class Solution {
public:bool isIsomorphic(string s, string t) {if(s.size()==0&&t.size()==0) {return true;}for(int i=0;i<s.size();i++) {if(s.find(s[i])!=t.find(t[i])) {return false;}}return true;}
};


给定一种规律 pattern 和一个字符串 s ,判断 s 是否遵循相同的规律。

这里的 遵循 指完全匹配,例如, pattern 里的每个字母和字符串 s 中的每个非空单词之间存在着双向连接的对应规律。

示例1:

输入: pattern = "abba", s = "dog cat cat dog"
输出: true

示例 2:

输入:pattern = "abba", s = "dog cat cat fish"
输出: false

示例 3:

输入: pattern = "aaaa", s = "dog cat cat dog"
输出: false

class Solution {
public:bool wordPattern(string pattern, string s) {vector<string> res;res = split(s);set<char> set2(pattern.begin(),pattern.end());set<string> set3;for(auto i:res) {set3.insert(i);}if(pattern.size()!=res.size()) {return false;}if(set2.size()!=set3.size()) {return false;}unordered_map<char, string> map2;for(int i=0;i<pattern.size();i++) {map2[pattern[i]] = res[i];}   for(int i=0;i<pattern.size();i++) {if(map2[pattern[i]]!=res[i]) {return false;}}return true;}vector<string> split(string s) {int len = s.length();int i(0);string ans= "", temp;vector<string> res;while(i<len) {temp = "";while(i<len&&s[i]==' ') {i++;}while(i<len&&s[i]!=' ') {temp += s[i++];}res.push_back(temp);}return res;}};

http://www.lryc.cn/news/225753.html

相关文章:

  • oracle 中 %TYPE %ROWTYPE
  • Pytorch实战教程(五)-计算机视觉基础
  • 51单片机PCF8591数字电压表数码管显示设计( proteus仿真+程序+设计报告+讲解视频)
  • 普华永道于进博会首发“企业数据资源会计处理一体化平台”
  • IDEA 使用Reset Current Branch to Here 进行git 版本控制,图文操作
  • 有趣的 TCP 抢带宽行为
  • HCIP---VRRP
  • 在家用Python搞副业,也能月入10000+
  • play() failed because the user didn‘t interact with the document first.
  • Java任意视频转MP4
  • flutter实践:慎用Expanded
  • 华为防火墙vrrp+hrp双机热备负载分担(两端为交换机)
  • 欧拉角(横滚角、俯仰角、偏航角)、旋转矩阵、四元数的转换与解决万向节死锁
  • Java Post请求参数格式为XML
  • Windows 安装 JDK 8 和 JDK 17 和多版本JDK切换
  • SpringData、SparkStreaming和Flink集成Elasticsearch
  • 中国电子学会2023年09月份青少年软件编程Python等级考试试卷六级真题(含答案)
  • 基于STM32设计的智能水母投喂器(华为云IOT)
  • 合成数据加速机器视觉学习
  • 物业管理服务预约小程序的效果如何
  • ORA-00257: Archiver error. Connect AS SYSDBA only until resolved错误解决
  • backbone:从AlexNet到...(持续补充ing)
  • FiRa标准——MAC实现(二)
  • oracle中分组函数LISTAGG
  • 深度学习pytorch之hub模块
  • LeetCode 2258. 逃离火灾:BFS
  • C# PaddleInference.PP-HumanSeg 人像分割 替换背景色
  • Java 变量初始化的两种方式和优缺点比较
  • 15.三数之和
  • 竞赛选题 深度学习疲劳驾驶检测 opencv python