LeetCode) 242. Valid Anagram

유병수·2023년 5월 29일
0

242. Valid Anagram

두개의 문자열이 주어지고 문자열이 같은 문자로 이루어져있는지 확인 하는 문제.

문자열을 sort한뒤 다시 문자열로 변경 후 같은지 다른지 확인

class Solution {
    public boolean isAnagram(String s, String t) {

        char[] first = s.toCharArray();
        char[] second = t.toCharArray();

        Arrays.sort(first);
        Arrays.sort(second);

        String s1 = String.valueOf(first);
        String s2 = String.valueOf(second);


        if(s1.equals(s2)) {
            return true;
        }else{
            return false;
        }
    }
}
class Solution {
    public boolean isAnagram(String s, String t) {

        if(s.length()!=t.length()){
            return false;
        }

        int[] sAsciiArr = new int[128];

        for(char c : s.toCharArray()){

            sAsciiArr[c] ++;
        }

        for(char c: t.toCharArray()){

            if(sAsciiArr[c]==0){
                 return false;   
            }


            sAsciiArr[c] --;

        }

        return true;
        
    }
}

이 코드가 가장 빠른 코드 인거 같았다. 길이가 안맞았을때는 무조건 다른 문자열이기 때문에 바로 예외처리를 해준거 같고, 문자열을 돌면서 같은 문자열인지 아닌지 증감을 통해서 확인해줬다.

0개의 댓글