• leetcode 有效的字母异位词 java


    题目:

    给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。

    示例 1:

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

    示例 2:

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

    说明:
    你可以假设字符串只包含小写字母。

    进阶:
    如果输入字符串包含 unicode 字符怎么办?你能否调整你的解法来应对这种情况?

    解题:

    先判断两个字符串的长度大小,不相等时则返回false;

    然后遍历字符串,用两个数组存储两个字符串相应字母(0到25对应a到z)的数量。然后比较数组对应元素大小,不同则返回false。

    class Solution {
        public boolean isAnagram(String s, String t) {
            int[] sCounts = new int[26];
            int[] tCounts = new int[26];
            for (char ch : s.toCharArray()) {
                sCounts[ch - 'a']++;
            }
            for (char ch : t.toCharArray()) {
                tCounts[ch - 'a']++;
            }
            for (int i = 0; i < 26; i++) {
                if (sCounts[i] != tCounts[i]) {
                    return false;
                }
            }
            return true;
        }
    }
  • 相关阅读:
    Python
    Python
    Python
    Python
    Python
    《The Rise and Fall of Scala》scala的兴衰
    Scala核心编程_第05章_函数式编程
    IntelliJ IDEA scala的源码设置
    Scala核心编程_第04章 程序流程控制
    Scala核心编程_第03章_运算符
  • 原文地址:https://www.cnblogs.com/yanhowever/p/10951705.html
Copyright © 2020-2023  润新知