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

Leetcode:242.有效的字母异位词

跟着carl学算法,本系列博客仅做个人记录,建议大家都去看carl本人的博客,写的真的很好的!
代码随想录

Leetcode:242.有效的字母异位词
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的 字母异位词。
示例 1:
输入: s = “anagram”, t = “nagaram”
输出: true
示例 2:
输入: s = “rat”, t = “car”
输出: false

在这种题型中可以将数组set,map都可以看做是hash表aASCII是97,字符串中每个值直接映射到数组的某个位置上,然后计数,最后若数组每个位置都还是0则说明是有效的字母异位词

	public boolean isAnagram(String s, String t) {
        if(s.length() != t.length())
            return false;
        int[] hash = new int[26];
        for(int i = 0; i< s.length(); i++){
            hash[s.charAt(i) - 'a']++;
        }
        for(int j = 0; j < t.length(); j++){
            hash[t.charAt(j) - 'a']--;
        }
        for(int i = 0; i < 26; i++){
            if(hash[i] != 0){
                return false;
            }
        }
        return true;
    }

因为最开始就判断了长度,所以可以在一个循环里面统计两个字符串

	public boolean isAnagram(String s, String t) {
        if(s.length() != t.length())
            return false;
        int[] hash = new int[26];
        for(int i = 0; i< s.length(); i++){
            hash[s.charAt(i) - 'a']++;
            hash[t.charAt(i) - 'a']--;
        }
        for(int i = 0; i < 26; i++){
            if(hash[i] != 0){
                return false;
            }
        }
        return true;
    }

http://www.kler.cn/a/413955.html

相关文章:

  • C++设计模式:桥接模式(Bridge)
  • 【Bug】el-date-picker组件时间差
  • Hive的基础函数
  • 【山大909算法题】2014-T1
  • JDBC 批量调用数据库 SQL, 函数与存储过程
  • 自动化的内存管理技术之垃圾回收机制-JavaScript引用数据内存回收机制
  • LeetCode 热题 100_最大子数组和(13_53)(贪心算法 ||动态规划)
  • Python学习36天
  • Java 线程中的分时模型和抢占模型
  • uniapp数据绑定、插值、v-bind、v-for
  • Docker部署h2non/imaginary
  • 无人机应用板卡详解!
  • 1067 Sort with Swap(0, i) (25)
  • 【GAMES101笔记速查——Lecture 21 Animation】
  • 【操作文档】mysql分区操作步骤.docx
  • DICOM医学影像应用篇——伪彩色映射 在DICOM医学影像中的应用详解
  • Spring Boot拦截器(Interceptor)详解
  • 网络安全之WAF
  • 【论文阅读】Learning to Learn Task-Adaptive Hyperparameters for Few-Shot Learning
  • AIGC引领金融大模型革命:未来已来
  • Docker:在 ubuntu 系统上生成和加载 Docker 镜像
  • Linux网络——IO模型和多路转接
  • 【高等数学学习记录】洛必达法则
  • 远程调用 rpc 、 open feign
  • 微前端-MicroApp
  • Servlet的应用(用户注册界面)