Java教程

力扣242. 有效的字母异位词(简单的计数数组)

本文主要是介绍力扣242. 有效的字母异位词(简单的计数数组),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

力扣242. 有效的字母异位词
题目描述:

给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
注意:若 s 和 t 中每个字符出现的次数都相同,则称 s 和 t 互为字母异位词。

示例1️⃣

输入: s = "anagram", t = "nagaram"
输出: true

示例2️⃣:

输入: s = "rat", t = "car"
输出: false

提示:

1 <= s.length, t.length <= 5 * 104
s 和 t 仅包含小写字母

分析:
依旧是对字符计数,创造int cnt[127]={0};即可

class Solution {
public:
    bool isAnagram(string s, string t) {
    if(s.size()!=t.size())return false;
    int cnt1[127]={0};
    int cnt2[127]={0};
    for(int i=0;i<s.size();i++){
       cnt1[int(s[i])]++;
       cnt2[int(t[i])]++;
    }
    for(int i=0;i<s.size();i++){
        if(cnt1[int(s[i])]!=cnt2[int(s[i])]) return false;
    }   //两边计数,检验
    return true;
    }
};

在这里插入图片描述
总结:关于对字符串中字符计数有关的问题,字符计数数组常可拿来直接套用。

这篇关于力扣242. 有效的字母异位词(简单的计数数组)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!