首页 > 代码库 > 字符串同构
字符串同构
*****************************************
题目 判断s和t是不是一种模式,eg add cpp是同构
*****************************************
思路:用hash表,将s、t中所有出现过的字符 对应到1-26,比较对应的数字是否相同
class Solution { public: bool isIsomorphic(string s, string t) { if(s.length()!= t.length()) { return false; } map<char ,int>mapchar; map<char ,int>mapchar1; for(int i=0;i<s.length();i++) { if(mapchar.find(s[i]) == mapchar.end()) { if(mapchar1.find(t[i]) != mapchar1.end()) { return false; } mapchar.insert(pair<char,int>(s[i],i)); mapchar1.insert(pair<char,int>(t[i],i)); } else { if(mapchar1.find(t[i]) == mapchar1.end()) return false; if(mapchar1[t[i]] != mapchar[s[i]]) { return false; } } } return true; } };
字符串同构
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。