编程语言
首页 > 编程语言> > 程序员面试金典:面试题 01.02. 判定是否互为字符重排

程序员面试金典:面试题 01.02. 判定是否互为字符重排

作者:互联网

给定两个字符串 s1s2,请编写一个程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。
思路:实际上就是比较两个字符串中相同字符的个数是否相同

class Solution {
    public boolean CheckPermutation(String s1, String s2) {
        int len1 = s1.length();
        int len2 = s2.length();
        if (len1 != len2) {
            return false;
        }
        int[] arr = new int[128];
        for (int i = 0; i < len1; i++) {
            arr[s1.charAt(i)]++;
        }
        for (int i = 0; i < len2; i++) {
            arr[s2.charAt(i)]--;
        }
        for (int i = 0; i < 128; i++) {
            if (arr[i] != 0) {
                return false;
            }
        }
        return true;
    }
}

标签:面试题,int,金典,s1,arr,++,01.02,s2,len1
来源: https://www.cnblogs.com/blogma/p/16276452.html