4장 빅오, 자료형 빅오 __상한과 최악 __분할 상환 분석 __병렬화 자료형 __파이썬 자료형 __원시 타입 __객체
5장 리스트, 딕셔너리 리스트 __리스트의 활용 방법 __리스트의 특징 딕셔너리 __딕셔너리의 활용 방법 __딕셔너리 모듈
6장 문자열 조작 [문제]_01 유효한 팰린드롬 [문제]_02 문자열 뒤집기 [문제]_03 로그 파일 재정렬 [문제]_04 가장 흔한 단어 [문제]_05 그룹 애너그램 여러 가지 정렬 방법 [문제]_06 가장 긴 팰린드롬 부분 문자열 유니코드와 UTF-8
[3부 선형 자료구조]
7장 배열 [문제]_07 두 수의 합 [문제]_08 빗물 트래핑 [문제]_09 세 수의 합 [문제]_10 배열 파티션 I [문제]_11 자신을 제외한 배열의 곱 [문제]_12 주식을 사고팔기 가장 좋은 시점
8장 연결 리스트 [문제]_13 팰린드롬 연결 리스트 [문제]_14 두 정렬 리스트의 병합 [문제]_15 역순 연결 리스트 [문제]_16 두 수의 덧셈 [문제]_17 페어의 노드 스왑 [문제]_18 홀짝 연결 리스트 [문제]_19 역순 연결 리스트 II
9장 스택, 큐 스택 __연결 리스트를 이용한 스택 ADT 구현 [문제]_20 유효한 괄호 [문제]_21 중복 문자 제거 [문제]_22 일일 온도 큐 [문제]_23 큐를 이용한 스택 구현 [문제]_24 스택을 이용한 큐 구현 [문제]_25 원형 큐 디자인
10장 데크, 우선순위 큐 데크 [문제]_26 원형 데크 디자인 우선순위 큐 [문제]_27 k개 정렬 리스트 병합
11장 해시 테이블 해시 __생일 문제 __비둘기집 원리 __로드 팩터 __해시 함수 충돌 __개별 체이닝 __오픈 어드레싱 __언어별 해시 테이블 구현 방식 [문제]_28 해시맵 디자인 [문제]_29 보석과 돌 [문제]_30 중복 문자 없는 가장 긴 부분 문자열 [문제]_31 상위 K 빈도 요소
[4부 비선형 자료구조]
12장 그래프 오일러 경로 해밀턴 경로 그래프 순회 __DFS(깊이 우선 탐색) __BFS(너비 우선 탐색) 백트래킹 제약 충족 문제 [문제]_32 섬의 개수 [문제]_33 전화 번호 문자 조합 [문제]_34 순열 [문제]_35 조합 [문제]_36 조합의 합 [문제]_37 부분 집합 [문제]_38 일정 재구성 [문제]_39 코스 스케줄
13장 최단 경로 문제 [문제]_40 네트워크 딜레이 타임 [문제]_41 K 경유지 내 가장 저렴한 항공권
14장 트리 트리의 각 명칭 그래프 vs 트리 이진 트리 [문제]_42 이진 트리의 최대 깊이 [문제]_43 이진 트리의 직경 [문제]_44 가장 긴 동일 값의 경로 [문제]_45 이진 트리 반전 [문제]_46 두 이진 트리 병합 [문제]_47 이진 트리 직렬화 & 역직렬화 [문제]_48 균형 이진 트리 [문제]_49 최소 높이 트리 이진 탐색 트리(BST) __자가 균형 이진 탐색 트리 [문제]_50 정렬된 배열의 이진 탐색 트리 변환 [문제]_51 이진 탐색 트리(BST)를 더 큰 수 합계 트리로 [문제]_52 이진 탐색 트리(BST) 합의 범위 [문제]_53 이진 탐색 트리(BST) 노드 간 최소 거리 트리 순회 [문제]_54 전위, 중위 순회 결과로 이진 트리 구축
15장 힙 힙 연산 __삽입 __추출 [문제]_55 배열의 K번째 큰 요소
16장 트라이 [문제]_56 트라이 구현 [문제]_57 팰린드롬 페어
[5부 알고리즘]
17장 정렬 버블 정렬 병합 정렬 퀵 정렬 안정 정렬 vs 불안정 정렬 [문제]_58 리스트 정렬 [문제]_59 구간 병합 [문제]_60 삽입 정렬 리스트 [문제]_61 가장 큰 수 [문제]_62 유효한 애너그램 [문제]_63 색 정렬 [문제]_64 원점에 K번째로 가까운 점
18장 이진 검색 [문제]_65 이진 검색 [문제]_66 회전 정렬된 배열 검색 [문제]_67 두 배열의 교집합 [문제]_68 두 수의 합 II [문제]_69 2D 매트릭스 검색 II
19장 비트 조작 부울 연산자 비트 연산자 비트 조작 퀴즈 __자릿수 제한 비트 연산 2의 보수 __2의 보수 숫자 포맷 __2의 보수 수학 연산 __비트 연산자 NOT [문제]_70 싱글 넘버 [문제]_71 해밍 거리 [문제]_72 두 정수의 합 [문제]_73 UTF-8 검증 [문제]_74 1비트의 개수
20장 슬라이딩 윈도우 [문제]_75 최대 슬라이딩 윈도우 [문제]_76 부분 문자열이 포함된 최소 윈도우 [문제]_77 가장 긴 반복 문자 대체
21장 그리디 알고리즘 배낭 문제 동전 바꾸기 문제 가장 큰 합 [문제]_78 주식을 사고 팔기 가장 좋은 시점 II [문제]_79 키에 따른 대기열 재구성 [문제]_80 태스크 스케줄러 [문제]_81 주유소 [문제]_82 쿠키 부여
22장 분할 정복 [문제]_83 과반수 엘리먼트 [문제]_84 괄호를 삽입하는 여러 가지 방법
23장 다이나믹 프로그래밍 최적 부분 구조 중복된 하위 문제들 다이나믹 프로그래밍 방법론 [문제]_85 피보나치 수 0-1 배낭 문제 [문제]_86 최대 서브 배열 [문제]_87 계단 오르기 [문제]_88 집 도둑
부록A 회사 및 이직 가이드 회사 가이드 취업 준비 이직 준비 이직 가이드
부록B 카카오 공채 문제 풀이 [문제]_B1 비밀 지도 [문제]_B2 다트 게임 [문제]_B3 캐시 [문제]_B4 셔틀버스 [문제]_B5 뉴스 클러스터링 [문제]_B6 프렌즈4블록 [문제]_B7 추석 트래픽