Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

<파이썬 알고리즘 인터뷰> 95가지 알고리즘 문제 풀이로 완성하는 코딩 테스트

Notifications You must be signed in to change notification settings

JIYUNHYEOK/algorithm-interview

Repository files navigation

파이썬 알고리즘 인터뷰

95가지 알고리즘 문제 풀이로 완성하는 코딩 테스트

책표지
《파이썬 알고리즘 인터뷰》는 다음 판매처에서 구매하실 수 있습니다.

및 전국 교보문고 매장

★ 정오표: https://www.onlybook.co.kr/entry/algorithm-interview-errata
★ 도서정보: https://www.onlybook.co.kr/entry/algorithm-interview

★ YouTube: https://www.youtube.com/watch?v=fNyGHpSWhTA

☆ 학교나 학원에서 강의를 진행하시는 교수님/강사님께 제공 가능한 이 책의 강의 교안 자료가 준비되어 있습니다. (1) 성함, 연락처 (2) 강의처 (3) 강의 교과목 (4) 간단한 강의계획 등을 정리하셔서 support@onlybook.co.kr 이메일로 보내주십시오. 내용 검토 후 제공해드리겠습니다.

마인드맵

문제 풀이

번호 제목 난이도 풀이 코드
1 유효한 팰린드롬 6장. 문자열 조작 1-1.py
1-2.py
1-3.py
1-4.c
2 문자열 뒤집기 6장. 문자열 조작 2-1.py
2-2.py
3 로그 파일 재정렬 6장. 문자열 조작 3-1.py
4 가장 흔한 단어 6장. 문자열 조작 4-1.py
5 그룹 애너그램 ★★ 6장. 문자열 조작 5-1.py
6 가장 긴 팰린드롬 부분 문자열 ★★ 6장. 문자열 조작 6-1.py
7 두 수의 합 7장. 배열 7-1.py
7-2.py
7-3.py
7-4.py
7-5.py
7-6.go
8 빗물 트래핑 ★★★ 7장. 배열 8-1.py
8-2.py
9 세 수의 합 ★★ 7장. 배열 9-1.py
9-2.py
10 배열 파티션 I 7장. 배열 10-1.py
10-2.py
10-3.py
11 자신을 제외한 배열의 곱 ★★ 7장. 배열 11-1.py
12 주식을 사고팔기 가장 좋은 시점 7장. 배열 12-1.py
12-2.py
13 팰린드롬 연결 리스트 8장. 연결 리스트 13-1.py
13-2.py
13-3.go
13-4.py
14 두 정렬 리스트의 병합 8장. 연결 리스트 14-1.py
15 역순 연결 리스트 8장. 연결 리스트 15-1.py
15-2.py
16 두 수의 덧셈 ★★ 8장. 연결 리스트 16-1.py
16-2.py
17 페어의 노드 스왑 ★★ 8장. 연결 리스트 17-1.py
17-2.py
17-3.py
18 홀짝 연결 리스트 ★★ 8장. 연결 리스트 18-1.py
19 역순 연결 리스트 II ★★ 8장. 연결 리스트 19-1.py
20 유효한 괄호 9장. 스택, 큐 20-1.py
21 중복 문자 제거 ★★★ 9장. 스택, 큐 21-1.py
21-2.py
22 일일 온도 ★★ 9장. 스택, 큐 22-1.py
23 큐를 이용한 스택 구현 9장. 스택, 큐 23-1.py
24 스택을 이용한 큐 구현 9장. 스택, 큐 24-1.py
25 원형 큐 디자인 ★★ 9장. 스택, 큐 25-1.py
26 원형 데크 디자인 ★★ 10장. 데크, 우선 순위 큐 26-1.py
27 k개 정렬 리스트 병합 10장. 데크, 우선 순위 큐 27-1.py
28 해시맵 디자인 11장. 해시 테이블 28-1.py
29 보석과 돌 11장. 해시 테이블 29-1.py
29-2.py
29-3.py
29-4.py
30 중복 문자 없는 가장 긴 부분 문자열 ★★ 11장. 해시 테이블 30-1.py
31 상위 K 빈도 요소 ★★ 11장. 해시 테이블 31-1.py
31-2.py
32 섬의 개수 ★★ 12장. 그래프 32-1.py
33 전화 번호 문자 조합 ★★ 12장. 그래프 33-1.py
34 순열 ★★ 12장. 그래프 34-1.py
34-2.py
35 조합 ★★ 12장. 그래프 35-1.py
35-2.py
36 조합의 합 ★★ 12장. 그래프 36-1.py
37 부분 집합 ★★ 12장. 그래프 37-1.py
38 일정 재구성 ★★ 12장. 그래프 38-1.py
38-2.py
38-3.py
39 코스 스케줄 ★★ 12장. 그래프 39-1.py
39-2.py
40 네트워크 딜레이 타임 ★★ 13장. 최단 경로 문제 40-1.py
41 K 경유지 내 가장 저렴한 항공권 ★★ 13장. 최단 경로 문제 41-1.py
42 이진 트리의 최대 깊이 14장. 트리 42-1.py
43 이진 트리의 직경 14장. 트리 43-1.py
44 가장 긴 동일 값의 경로 14장. 트리 44-1.py
45 이진 트리 반전 14장. 트리 45-1.py
45-2.py
45-3.py
45-4.py
46 두 이진 트리 병합 14장. 트리 46-1.py
47 이진 트리 직렬화 & 역직렬화 ★★★ 14장. 트리 47-1.py
48 균형 이진 트리 14장. 트리 48-1.py
49 최소 높이 트리 ★★ 14장. 트리 49-1.py
50 정렬된 배열의 이진 탐색 트리 변환 14장. 트리 50-1.py
51 이진 탐색 트리(BST)를 더 큰 수 합계 트리로 ★★ 14장. 트리 51-1.py
52 이진 탐색 트리(BST) 합의 범위 14장. 트리 52-1.py
52-2.py
52-3.py
52-4.py
53 이진 탐색 트리(BST) 노드 간 최소 거리 14장. 트리 53-1.py
53-2.py
54 전위, 중위 순회 결과로 이진 트리 구축 ★★ 14장. 트리 54-1.py
55 배열의 K번째 큰 요소 ★★ 15장. 힙 55-1.py
55-2.py
55-3.py
55-4.py
56 트라이 구현 ★★ 16장. 트라이 56-1.py
57 팰린드롬 페어 ★★★ 16장. 트라이 57-1.py
57-2.py
58 리스트 정렬 ★★ 17장. 정렬 58-1.py
58-3.py
59 구간 병합 ★★ 17장. 정렬 59-1.py
60 삽입 정렬 리스트 ★★ 17장. 정렬 60-1.py
60-2.py
61 가장 큰 수 ★★ 17장. 정렬 61-1.py
62 유효한 애너그램 17장. 정렬 62-1.py
63 색 정렬 ★★ 17장. 정렬 63-1.py
64 원점에 K번째 가까운 점 ★★ 17장. 정렬 64-1.py
65 이진 검색 18장. 이진 검색 65-1.py
65-2.py
65-3.py
65-4.py
66 회전 정렬된 배열 검색 ★★ 18장. 이진 검색 66-1.py
67 두 배열의 교집합 18장. 이진 검색 67-1.py
67-2.py
67-3.py
68 두 수의 합 II 18장. 이진 검색 68-1.py
68-2.py
68-3.py
68-4.py
68-5.py
69 2D 행렬 검색 II ★★ 18장. 이진 검색 69-1.py
69-2.py
70 싱글 넘버 19장. 비트 조작 70-1.py
71 해밍 거리 19장. 비트 조작 71-1.py
72 두 정수의 합 ★★★ 19장. 비트 조작 72-1.py
72-2.py
73 UTF-8 검증 ★★ 19장. 비트 조작 73-1.py
74 1비트의 개수 19장. 비트 조작 74-1.py
74-2.py
75 최대 슬라이딩 윈도우 ★★★ 20장. 슬라이딩 윈도우 75-1.py
75-2.py
76 부분 문자열이 포함된 최소 윈도우 ★★★ 20장. 슬라이딩 윈도우 76-1.py
76-2.py
76-3.py
77 가장 긴 반복 문자 대체 ★★ 20장. 슬라이딩 윈도우 77-1.py
78 주식을 사고 팔기 가장 좋은 시점 II 21장. 그리디 알고리즘 78-1.py
78-2.py
79 키에 따른 대기열 재구성 ★★ 21장. 그리디 알고리즘 79-1.py
80 태스크 스케줄러 ★★ 21장. 그리디 알고리즘 80-1.py
81 주유소 ★★ 21장. 그리디 알고리즘 81-1.py
81-2.py
82 쿠키 부여 21장. 그리디 알고리즘 82-1.py
82-2.py
83 과반수 엘리먼트 22장. 분할 정복 83-1.py
83-2.py
83-3.py
83-4.py
84 괄호를 삽입하는 여러가지 방법 ★★ 22장. 분할 정복 84-1.py
85 피보나치 수 23장. 다이나믹 프로그래밍 85-1.py
85-2.py
85-3.py
85-4.py
86 최대 서브 배열 23장. 다이나믹 프로그래밍 86-1.py
86-2.py
87 계단 오르기 23장. 다이나믹 프로그래밍 87-1.py
87-2.py
88 집 도둑 23장. 다이나믹 프로그래밍 88-1.py
88-2.py
89(문제 1) 비밀 지도 부록 B. 카카오 공채 문제 풀이 1.py
90(문제 2) 다트 게임 부록 B. 카카오 공채 문제 풀이 2.py
91(문제 3) 캐시 부록 B. 카카오 공채 문제 풀이 3.py
92(문제 4) 셔틀버스 ★★ 부록 B. 카카오 공채 문제 풀이 4.py
93(문제 5) 뉴스 클러스터링 ★★ 부록 B. 카카오 공채 문제 풀이 5.py
94(문제 6) 프렌즈4블록 ★★★ 부록 B. 카카오 공채 문제 풀이 6.py
95(문제 7) 추석 트래픽 ★★★ 부록 B. 카카오 공채 문제 풀이 7.py

기타 코드

리트코드 변경 사항 및 보다 효율적인 풀이

  • 7번 문제는 테스트케이스가 삭제되어 실행 시간이 달라졌습니다. #62
  • 25번 문제의 보다 효율적인 풀이는 #105를 참고하세요.
  • 33번 문제의 보다 효율적인 풀이는 #91을 참고하세요.
  • 35번 문제의 보다 효율적인 풀이는 #111을 참고하세요.
  • 36번 문제의 보다 효율적인 풀이는 #112를 참고하세요.
  • 41번 문제가 테스트케이스 변경으로 타임아웃이 발생하여 더 이상 풀이가 되지 않습니다. #104
  • 47번 문제는 평가 함수의 변경으로 TreeNode 선언을 주석으로 처리하고 실행하세요. #97
  • 75번 문제는 테스트케이스가 추가되어 더 이상 풀이가 되지 않습니다. 새로운 풀이는 #67을 참고하세요.

About

<파이썬 알고리즘 인터뷰> 95가지 알고리즘 문제 풀이로 완성하는 코딩 테스트

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 96.9%
  • Go 2.4%
  • C 0.7%

AltStyle によって変換されたページ (->オリジナル) /