[LeetCode] 0242-valid-anagram

민지킴·2022년 10월 25일
0

LeetCode

목록 보기
2/4
post-thumbnail

Repo : https://github.com/courage331/LeetCode/tree/main/0242-valid-anagram

풀이 : Anagram은 일반적으로 모든 원래 문자를 정확히 한 번 사용하여 다른 단어 또는 구의 문자를 재배열하여 형성된 단어 또는 구이다.

그러므로 두 배열의 길이가 다를 경우 false처리를 하였는데
지금 생각해보니 최초에 s.length()와 t.length()를 비교하는게 더 시간을 단축하는 경우가 많을것 같았다.

길이가 같을경우에 알파벳순으로 정렬을 하게된다면 같은 위치에, 같은 알파벳이 없게된다면 Anagram을 만들지 못하므로 false처리한다.

class Solution {
    public boolean isAnagram(String s, String t) {
        String [] sArr = s.split("");
        String [] tArr = t.split("");
        Arrays.sort(sArr);
        Arrays.sort(tArr);
        if(tArr.length != sArr.length) return false;
        for(int i=0; i<sArr.length; i++){
            if(!sArr[i].equals(tArr[i])){
                return false;
            }
        }
        return true;
    }
}
profile
하루하루는 성실하게 인생 전체는 되는대로

0개의 댓글