387. First Unique Character in a String

Doyeon Kim·2022년 5월 27일

코딩테스트 공부

목록 보기
70/171

문자열에서 가장 첫번째 unique값을 구하는 문제이다.

처음에 문자열을 탐색하며 나머지값들과 비교했을 때 unique값이면 break를 하도록 코드를 짜 보았는데

class Solution:
    def firstUniqChar(self, s: str) -> int:
        l = len(s)
        for i in range(len(s)-1):
            if s[i] not in s[i+1:l]:
                return i
                break
        return -1

"a,a,b,b"애서 막힘

그래서 다시 수정에 수정에 수정을 더해서.. 한 결과

class Solution:
    def firstUniqChar(self, s: str) -> int:
        l = len(s)
        for i in range(len(s)):
            if s[i] not in s[:i] and s[i] not in s[i+1:]:
                return i
                
        return -1

Runtime: 670 ms, faster than 10.98% of Python3 online submissions for First Unique Character in a String.
Memory Usage: 14.1 MB, less than 58.81% of Python3 online submissions for First Unique Character in a String.


22.06.28 복습
i를 기준으로 앞뒤를 슬라이싱하여 i가 있는지 확인한다는 생각으로 이해하고 풀면 어렵지는 않은 문제이다.

profile
성장하고 도전하는 개발자. 프로그래밍 좋아하세요?

0개의 댓글