인프런 커뮤니티 질문&답변
1-10 코테 시험에서 collections의 Counter 사용 여부와 복잡도 계산
해결된 질문
작성
·
69
·
수정됨
0
1. 현재 학습 진도
몇 챕터/몇 강을 수강 중이신가요? 1-10
어떤 알고리즘을 학습하고 계신가요? 1-10
2. 어려움을 겪는 부분
실제로 코테볼때 collections을 import 하지 말라는 제약조건이 있는 경우도 있는지 궁금합니다. (예전에
js로 코테볼때 fetch 말고 xhr 써야된다는 제약조건을 본적이 있어서...ㅋ)
아래 경우는 Counter에서 순회한번 해서 O(N),
for c in s반복문 O(N), 조건문은 딕셔너리가 해시테이블이라 O(1)O(N) + O(N) = O(N) 으로 계산했는데 맞나요?
3. 시도해보신 내용
from collections import Counter
def solution(s):
count = Counter(s)
return next((c for c in s if count[c] == 1), "_") 답변 1
1
딩코딩코
지식공유자
안녕하세요 ehrbs2018 님 좋은 질문 감사합니다!!
실제 코테에서 마주할 수 있는 현실적인 고민들인 것 같습니다
1. collections 모듈 사용 가능 여부
대부분의 기업에서는 collections 사용이 가능합니다. 제가 경험한 38개 기업 중 대부분이 Python 표준 라이브러리는 자유롭게 사용할 수 있도록 했습니다!
2. 시간복잡도 계산 검토
정확한 분석입니다!
Counter(s): 문자열 s를 한 번 순회하면서 각 문자의 빈도수를 계산 → O(N)for c in s: 다시 문자열을 순회하면서 조건 확인 → O(N)count[c] == 1: 딕셔너리 조회는 해시테이블 특성상 → O(1)
따라서 O(N) + O(N) = O(N)이 맞습니다.
좋은 질문 감사합니다 즐건 주말 보내세요!!




