当前位置:网站首页>Leecode-205. 同构字符串
Leecode-205. 同构字符串
2022-08-09 23:26:00 【风吟Pro】
主要思路就是用哈希Map以K-V的形式来进行两个字符串同一个位置上的格式映射
leetcode官方思路
我们维护两张哈希表,
第一张哈希表s2t 以 s 的字符为键,映射至 t 的字符为值,
第二张哈希表t2s 以 t 的字符为键,映射至 s 的字符为值。
从左至右遍历两个字符串的字符,不断更新两张哈希表
如果出现冲突
(即当前下标 index 对应的字符 s[index] 已经存在映射且不为 t[index] 或当前下标 index 对应的字符 t[index] 已经存在映射且不为 s[index])时说明两个字符串无法构成同构,返回 false。
如果遍历结束没有出现冲突,则表明两个字符串是同构的,返回 true 即可。
class Solution {
public boolean isIsomorphic(String s, String t) {
//创建哈希表
Map<Character, Character> s2t = new HashMap<Character, Character>();
Map<Character, Character> t2s = new HashMap<Character, Character>();
//这里不用管遍历多少遍,如果遍历都不不够长,那么必然是字符串长度不同,也就是不同构
for(int i=0;i<s.length();++i){
//拿到每个位置的字符
char x=s.charAt(i);
char y=t.charAt(i);
//如果任意一个表的key已经存在,并且拿到的value和当前的目标value不一致,就代表映射失败
if(s2t.containsKey(x)&&s2t.get(x)!=y||
t2s.containsKey(y)&&t2s.get(y)!=x){
return false;
}
//匹配成功,把当前的映射存进两个表
s2t.put(x,y);
t2s.put(y,x);
}
return true;
}
}
边栏推荐
- Eureka protects itself
- conda新建环境时报错NotWritableError: The current user does not have write permissions
- 多商户商城系统功能拆解25讲-平台端分销申请
- Golden Warehouse Database KingbaseGIS User Manual (6.6. Geometric Object Verification Function, 6.7. Spatial Reference System Function)
- JS基础笔记-关于对象
- Dry goods!Towards robust test-time adaptation
- SRv6 performance measurement
- [Cloud native] Kubernetes orchestration tools
- 【C语言】通讯录《静态内存版本》
- CAD 绘制圆角处理
猜你喜欢
Description of AirFlow
YOLOV5 study notes (7) - training your own data set
LSTM-based distributed energy generation prediction (Matlab code implementation)
CST Studio Suite 2021 software installation package and installation tutorial
framework源码读后感
MATLB|和她跌宕起伏最终到达人生之峰【浪漫旅途】
服务发现@EnableDiscoveryClient
为什么不建议你在 Docker 中跑 Mysql ?
61.【快速排序法详解】
【集训DAY3】中位数
随机推荐
【SSL集训DAY2】Sequence【数学】
阿雷的血压有些低
【SSL集训DAY2】Sort【树状数组】
Golden Warehouse Database KingbaseGIS User Manual (6.5. Geometry Object Editing Function)
关于服务治理
AppUser object extension based on ABP
Wireshark经典实践和面试13点总结
多商户商城系统功能拆解24讲-平台端分销会员
In-depth understanding of multithreading (Part 1)
多商户商城系统功能拆解25讲-平台端分销申请
LeetCode952三部曲之三:再次优化(122ms -> 96ms,超51% -> 超91%)
数据库的备份与恢复「建议收藏」
拼多多店铺运营不得不知的留个运营小知识
深入理解Aarch64内存管理
ES6 从入门到精通 # 13:数组的扩展方法二
HStreamDB v0.9 发布:分区模型扩展,支持与外部系统集成
【JZOF】77 Print binary tree in zigzag
Golden Warehouse Database KingbaseGIS User Manual (6.6. Geometric Object Verification Function, 6.7. Spatial Reference System Function)
《GB5084-2021》PDF下载
JS基础笔记-关于对象