공대생의 비망록

[LeetCode][Easy] First Unique Character in a String 문제 Python 풀이 본문

Programming Language/Python

[LeetCode][Easy] First Unique Character in a String 문제 Python 풀이

myungsup1250 2026. 2. 9. 01:07

주어진 문자열 s에서 첫 번째의 고유 문자 위치를 찾아 반환하는 문제.

문자열을 1회차로 순회하며 dictionary 자료구조에 모든 문자의 빈도를 저장하도록 하고, 2회차로 순회할 때 dictionary에 빈도가 1이라면 그 위치를 반환하도록 하여 문제를 해결하였다.

 

문제 풀이 (시간복잡도는 O(n)이다.):

class Solution:
    def firstUniqChar(self, s: str) -> int:
        seen = {}
        for i in range(len(s)):
            if s[i] not in seen:
                seen[s[i]] = 1
            else:
                seen[s[i]] += 1

        for i in range(len(s)):
            if seen[s[i]] == 1:
                return i
        
        return -1
Comments