929. Unique Email Addresses

#string

Problem

Intution

Time and Space complexity

Solution

class Solution {
    public int numUniqueEmails(String[] emails) {
        // n -> Number of inputs emails
        // m -> Number of characters in each email
        // Time complexity: O(n * m)
        // Space complexity: O(n)
        
        Set<String> uniqueEmails = new HashSet<>();
        
        for(String email: emails) {
            String[] splitEmails = email.split("@");
            
            boolean breakIt = false;
            StringBuilder sb = new StringBuilder();
            
            for(char ch: splitEmails[0].toCharArray()) {
                if(ch == '.') {
                    continue;
                } else if(ch == '+') {
                    break;
                } else {
                    sb.append(ch);
                }
            }
            uniqueEmails.add(sb.toString() + "@" + splitEmails[1]);
        }
        return uniqueEmails.size();
    }
}

Last updated

Was this helpful?