""" 387. First Unique Character in a String Difficulty: Easy https://leetcode.com/problems/first-unique-character-in-a-string/ ────────────────────────────────────────────────── Given a string s, find the first non-repeating character in it and return its index. If it does not exist, return -1. Example 1: Input: s = "leetcode" Output: 0 Explanation: The character 'l' at index 0 is the first character that does not occur at any other index. Example 2: Input: s = "loveleetcode" Output: 2 Example 3: Input: s = "aabb" Output: -1 Constraints: • 1 <= s.length <= 10^5 • s consists of only lowercase English letters. """ from collections import Counter class Solution: def firstUniqChar(self, s: str) -> int: map = Counter(s) for i, c in enumerate(s): if map[c] == 1: return i return -1