1-10 코테 시험에서 collections의 Counter 사용 여부와 복잡도 계산
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)이 맞습니다.
좋은 질문 감사합니다 즐건 주말 보내세요!!
수강평 이벤트
0
33
2
코딩테스트 처음인데 이런 공부방법이어도 괜찮을까요
0
66
2
3-3 정렬-2 선택정렬 로직
0
42
2
링크드 리스트 끝에서 k번째 값 출력하기
0
45
2
LinkedList 과제 Fast, slow 포인터
0
50
2
투포인터 시간복잡도
0
52
2
수강평 작성 후 자료
0
53
2
수업교재 링크 오류
2
114
2
프로그래머스에서 제출 후 채점시 틀림ㅠ
0
130
2
1-10 알고리즘 더 풀어보기(2) 질문 있습니다
0
74
2
문제 풀이 방식 관련 질문입니다!
0
85
2
1-5 알고리즘과 친해지기 (2) - 최빈값찾기 질문 있습니다
0
91
2
수업자료 pdf 받고싶습니다
0
106
2
강의 자료 오류 수정
0
75
1
2-10 더하거나 빼거나 관련 질문입니다
0
63
2
3-8 해쉬 -2
0
49
2
Linked List Element Delete Explanation Problem
0
68
2
강의3-4 스택 탑 문제
0
74
2
코드스니펫 입출력 케이스에 오류가 있는것 같아요
0
99
3
링크드 리스트 원소 찾기 구현 방식 질문드립니다.
0
75
2
1874 - 스택 문항
0
81
2
DP Java 예제 자료형 오버플로우 문제
0
100
2
4-9 4주차 숙제중 농심라면 문제
0
111
2
DFS 에서 스택을 사용하는 이유
1
187
3





