# Strings: Making Anagrams

By
blackntt

Đề gốc là bài  Strings: Making Anagrams của RackerRank

Tóm tắt

Đầu vào 2 chuỗi String a, b:

Viết hàm makeAnangram với đầu ra số lượng kí tự tối thiểu cần xóa ở 2 chuỗi để cho 2 chuỗi đó có cùng danh sách các loại kí tự và số lượng kí tự của từng loại

Solution- Java code:

static int makeAnagram(String a, String b) {
        ArrayList chars = new ArrayList();
        ArrayList frq1 = new ArrayList();
        ArrayList frq2 = new ArrayList();
        extracted(a, chars, frq1,frq2);
        extracted(b, chars, frq2,frq1);
        int changeCount = 0;
        for (int i = 0; i < chars.size(); i++) {
            if(frq1.get(i)!=frq2.get(i)) {
                changeCount +=Math.abs( frq1.get(i)-frq2.get(i));
            }
        }
        return changeCount;

    }
    private static void extracted(String a, ArrayList chars, ArrayList frq1, ArrayList frq2) {
        for(int i=0;i<a.length();i++){
            if(!chars.contains(a.charAt(i))){
                chars.add(a.charAt(i));
                frq1.add(1);
                frq2.add(0);
            }else{
                int index = chars.indexOf(a.charAt(i));
                frq1.set(index, frq1.get(index)+1);
            }
        }
    }