哈希表对应的leetcode

1. 背景

好多的leetcode可以采用哈希表来缓存一下数据,以空间换时间来解决

2. 实例

2.1 205. 同构字符串

需要注意不同的字段不可以对应同一个字段

ini 复制代码
public boolean isIsomorphic(String s, String t) {
    Map<Character, Character> reflectMap = new HashMap<>();
    for (int i = 0; i < s.length(); i++) {
        char c = s.charAt(i);
        if (reflectMap.containsKey(c)){
            Character character = reflectMap.get(c);
            if (character != t.charAt(i)){
                return false;
            }

        } else {
            if (reflectMap.containsValue(t.charAt(i))){
                return false;
            }
            reflectMap.put(c, t.charAt(i));
        }
    }
    return true;
}

2.2 383. 赎金信

可以利用数组的索引充当哈希表的key

arduino 复制代码
public boolean canConstruct(String ransomNote, String magazine) {
    if (ransomNote.length() > magazine.length()) {
        return false;
    }
    int[] arr = new int[26];
    for (int i = 0; i < magazine.length(); i++) {
        arr[ magazine.charAt(i) - 'a'] ++;
    }
    for (int i = 0; i < ransomNote.length(); i++) {
        arr[ransomNote.charAt(i) - 'a'] --;
        if (arr[ransomNote.charAt(i) - 'a'] < 0){
            return false;
        }
    }
    return true;
}
相关推荐
张彦峰ZYF15 分钟前
功能齐了不等于能上线:智能工单系统的AI回归测试、安全防护、成本可观测与CI/CD生产部署
后端·企业智能工单系统·评测线·安全线·成本线·部署线
Rain的Java大神之路18 分钟前
LeetCode 37 解数独面试攻略:回溯 + 位掩码 + MRV,从暴力到毫秒级求解
java·后端·leetcode
量化分析码农31 分钟前
【Python量化波动率实战 05】你的组合真的分散了吗:滚动相关与分散化收益
后端
IT_陈寒1 小时前
Vue这个奇葩的响应式问题让我加班到凌晨
前端·人工智能·后端
脚本自动化开发8 小时前
存储涨价后,磐镭WO5迷你主机值得买吗
后端
一只爱撸猫的程序猿11 小时前
我看着一个 AI 引擎在 14 天里,从"记忆"走进了"搜索"
人工智能·后端·架构
陈随易13 小时前
纯 Go 写的 JS 引擎,跑分超过了 C 语言的 QuickJS
前端·后端·程序员
卷无止境14 小时前
RAGFlow 项目全景报告:从文档解析引擎到 Agent 原生数据库
后端·python
小Z先生15 小时前
我用 Go + 系统 WebView 写了个纯本地 Postman:不装 Electron、不连云端
后端·github
IT_陈寒15 小时前
Redis连接池泄漏那次,我差点把生产环境搞崩了
前端·人工智能·后端