DEV Community

Giuseppe
Giuseppe

Posted on

LeetCode #387. Find Unique Character in a String

Time Complexity: O(n)

Space Complexity: O(k) where k = unique characters, worst case O(n)

class Solution {
    public int firstUniqChar(String s) {

        Map<Character, Integer> freqMap = new HashMap<>();

        for (int i = 0; i < s.length(); i++) {
            char c = s.charAt(i);
            freqMap.put(c, freqMap.getOrDefault(c, 0) +1);
        }

         for (int i = 0; i < s.length(); i++) {
             if (freqMap.get(s.charAt(i)) == 1) {
                 return i;
             }
         }
        return -1;
    }
}
Enter fullscreen mode Exit fullscreen mode

Top comments (0)