본문 바로가기

LeetCode - Top Interview 150

[Java Script]LeetCode 242. Valid Anagram

1. 문제 개요

문제 링크 : 242. Valid Anagram

 

Valid Anagram - LeetCode

Can you solve this real interview question? Valid Anagram - Given two strings s and t, return true if t is an anagram of s, and false otherwise. An Anagram is a word or phrase formed by rearranging the letters of a different word or phrase, typically using

leetcode.com

  • 주어진 문자열이 서로 anagram 인지 체크하는 문제입니다. 

에너그럼의 정의는 아래 사진과 같은데 문장을 구성한 문자의 순서만 교체한 문장입니다.

2. 문제 풀이

주어진 두개의 배열을 비교하면 되는 문제이기에 매우 간단합니다.

우선 두 문자열의 길이가 같은지 체크하고 각 문자열을 정렬하여 값이 같을경우 true를 리턴합니다.

 

구성하기 위한 구성을 주석으로 짜보면 다음과 같습니다.

 

var isAnagram = function(s, t) {
	// 두 문자열의 길이가 같은지 체크
    // 길이가 같다면 문자열을 정렬하고 값을 비교
};

 

 

LeetCode 요구 양식으로 코드 구현

 

var isAnagram = function(s, t) {
    if (s.length !== t.length) return false
    return s.split('').sort().join('') === t.split('').sort().join('')
};

 

LeetCode 제출 결과

이렇게 구현에 성공하였습니다.

 

3. 시간 복잡도 계산

정렬에 사용된 기능의 시간복잡도는 nlogn 입니다.

더보기

O(nlogn) = O(nlogn)

 

4. 깃허브

관련 사항은 깃허브에 모두 기재되어 있습니다.