每日两道算法题 - 字母异味词判断

问题

给定两个字符串,判断两个字符串是否互为异味词
异味词: 两个字符串中字符出现的次数相同,则互为异味词

思路

1)将两个字符串转为字符数组
2)对数组进行排序
3)比较两个字符数组是否相同

实现

public class IsAnagram {

    public static void main(String[] args) {

        String a = "hello";
        String b = "olleh";
        boolean result = isAnagram(a,b);
        System.out.println(result);
    }

    private static boolean isAnagram(String a, String b) {
        /**
         * 将字符串转换为字符数组,对数组中的字符进行排序,
         * 排序后可以保证相同字符是挨着的。
         * 比较两个数组是否相同
         */
        char[] charsA = a.toCharArray();
        char[] charsB = b.toCharArray();

        //排序
        Arrays.sort(charsA);
        Arrays.sort(charsB);

        return Arrays.equals(charsA,charsB);
    }
}
image.png

你可能感兴趣的:(每日两道算法题 - 字母异味词判断)