알고리즘 풀이

.leetcode(929. Unique Email Addresses)

silvergoni 2022. 4. 1. 09:25
반응형

https://leetcode.com/problems/unique-email-addresses/

 

1. 2022.04.01 시도

소요시간: 10분(4분 문제 읽기, 6분 코딩)

class Solution {
    public int numUniqueEmails(String[] emails) {
        Set<String> ret = new HashSet<>();
        for (String email: emails) {
            String rawLocalName = email.split("@")[0];
            String domainName = email.split("@")[1];
            
            String removeAfterPlus = rawLocalName.split("\\+")[0];
            String removeDots = removeAfterPlus.replace(".", "");
            
            
            ret.add(removeDots+ "@"+domainName);
        }
        
        return ret.size();
    }
}

풀이 접근 과정

어려울것 없이 변환하고 set으로 구분해주면 된다.

 

느낀점

  • StringUtils.split만 사용했더니 str.split에 대한 감이 없어졌다. +를 쓰기 위해서는 \\+해서 사용해줘야한다.
  • 다른 솔루션을 보니 indexOf 메소드로 포지션을 찾고 substring메소드를 사용해서 풀기도 하였다.

알고리즘 정리노트: .leetcode(알고리즘 문제풀이 접근)

반응형