
HOME 도서정보 IT 도서 프로그래밍

코딩 테스트를 어떻게 준비해야 할까?
코딩 테스트에 자주 등장하는 핵심 유형들 구현(시뮬레이션), 완전 탐색, 동적 프로그래밍, 탐욕법, 이진 탐색, 투 포인터 등 문제를 푸는 데 꼭 필요한 주요 알고리즘을 어떻게 읽고, 문제 유형과 구현 패턴을 배울 수 있습니다.
AI가 코드를 대신 써 주는 시대일수록, 개발자는 더 정확하게 읽고 더 깊이 이해할 수 있어야 합니다. 이 책은 초보 개발자가 그 출발점을 단단하게 만들 수 있도록 안내하는 친절한 길잡이가 되어 줄 것입니다.

쩜튜브
개발자 취업을 위한 실질적인 전략을 공유하고 있습니다. 유튜브 채널 ‘쩜튜브’를 운영하며 포트폴리오 구성부터 코딩 테스트 대비법까지 취업 준비생들이 가장 궁금해하는 핵심 콘텐츠를 제작해 왔으며, Class101에서 개발직군 자기소개서 작성 강의를 진행하며 실질적인 취업 성공 사례를 만들어왔습니다. 코딩 테스트를 처음 마주했을 때 느꼈던 막막함을 누구보다 잘 알기에, 시행착오를 줄일 수 있는 가장 효율적인 길을 제시하고자 합니다. 이 책에는 단순한 정답 풀이를 넘어, 문제를 바라보는 논리적인 시각과 실전에 바로 적용 가능한 체계적인 접근법을 담았습니다. 이 책이 코딩 테스트라는 높은 벽을 넘으려는 모든 분에게 든든한 가이드가 되길 바랍니다..
이상도
인턴 지원과 신입 공채 시험에서의 실패를 성장의 동력으로 삼아, 1년간 알고리즘 기초 이론부터 실전 문제 풀이 전략까지 독하게 파고들었습니다. 그 결과 난공불락 같았던 기업들의 코딩 테스트를 통과하며 실전 알고리즘의 핵심 원리를 몸소 깨달았습니다. 태생적 ‘알고리즘 천재’가 아닌, 꾸준한 노력으로 벽을 넘은 취준생 출신이기에 누구보다 학습자의 막막한 심정을 잘 알고 있습니다. 그래서 초보자가 이해하기 어려운 지점을 누구보다 정확히 짚어내어 같은 눈높이에서 손쉽게 풀어낼 수 있었습니다.
단순히 정답을 맞히는 법을 넘어 문제를 바라보는 시야를 넓히는 훈련법을 연구하고 스스로 원리를 깨우치기 위해 치열하게 고민했던 시간들을 바탕으로, 독자만큼은 알고리즘의 늪에서 헤매지 않고 복잡한 원리를 명쾌하게 이해할 수 있도록 돕기 위해 이 책을 집필했습니다.
■ 감수자 소개
김민상
알고리즘과 인공지능 분야를 두루 경험해 온 개발자입니다. 코딩테스트 학 습자를 위한 코딩테스트 대비 문제집을 깃허브에서 관리하고 있으며, 알고리즘 문제 출제와 검수에도 참여해 왔습니다. 소프트웨어 마에스트로 11기 TrustNet 팀으로 활동하며 인공지능 기반 조작 영상 검출 프로젝트를 수행해 우수 프로젝트에 선정되었고, 이후에는 특허 데이터 기반 자연어처리 프로젝트에 참여해 대규모 데이터 전처리 성능 개선과 모델 개발에 기여했습니다. 현재도 검색·언어모델 분야의 연구개발을 이어가고 있습니다.

1장 구현(시뮬레이션)
1. 문제 분류 설명
1-1. 요구사항을 함수로 나누어 구현하기
1-2. 함수 분할의 기준
1-3. 데이터의 배열화
1-4. 비트 처리
2. 문제 풀이
기본 문제 1: 중국 신분증 번호
기본 문제 2: 로봇 청소기
응용 문제 1: 온풍기 안녕!
응용 문제 2: 큐빙
2장. 완전 탐색
1. 문제 분류 설명
2-1. 알고리즘 시간 복잡도 분석
2-2. 재귀 함수
2-3. 재귀 함수 구현 방법
2-4. 재귀 함수 작성 시 주의점
2-5. 백트래킹과 가지치기
2-6. DFS와 BFS
2. 문제 풀이
기본 문제 1: DFS와 BFS
기본 문제 2: N과 M (1)
기본 문제 3: N과 M (2)
기본 문제 4: 숨바꼭질
응용 문제 1: 연구소
3장. 동적 프로그래밍
1. 문제 분류 설명
3-1. 피보나치 수열과 점화식
3-2. 메모이제이션(memoization)
3-3. 메모이제이션의 시간 복잡도
3-4. 메모이제이션 템플릿
3-5. Top-down과 Bottom-up
3-6. 배낭 문제
2. 문제 풀이
기본 문제 1: 피보나치 수
기본 문제 2: 2 × n 타일링
기본 문제 3: 계단 오르기
응용 문제 1: 체스판 위의 공
응용 문제 2: 파이프 옮기기
응용 문제 3: 가장 큰 정사각형
4장 탐욕법
1. 문제 분류 설명
4-1. 커스텀 Comparator 만드는 법
4-2. 우선순위 큐 사용법
2. 문제 풀이
기본 문제 1: 로프
기본 문제 2: 회의실 배정
기본 문제 3: 순회 강연
응용 문제 1: 전구 끄기
5장 이진 탐색
1. 문제 분류 설명
5-1. 이진 탐색
5-2. 매개 변수 탐색(파라메트릭 서치)
5-3. Upper Bound와 Lower Bound
2. 문제 풀이
기본 문제 1: 수 찾기
응용 문제 1: 공유기 설치
응용 문제 2: 숫자 구슬
6장 투 포인터
1. 문제 분류 설명
6-1. 투 포인터
6-2. 타입 체크
2. 문제 풀이
기본 문제 1: 수들의 합
응용 문제 1: 회전 초밥
응용 문제 2: 합이 0인 네 정수
7장 그래프와 트리
1. 문제 분류 설명
7-1. 그래프
7-2. 그래프의 종류
7-3. 간선의 표현 방법
7-4. 경로
7-5. 사이클
7-6. 트리
7-7. 트리의 재귀적 특징
2. 문제 풀이
기본 문제 1: 케빈 베이컨의 6단계 법칙
기본 문제 2: 트리 순회
응용 문제 1: 게리맨더링
응용 문제 2: 트리 색칠하기
응용 문제 3: 회장 선거
8장 위상 정렬
1. 문제 분류 설명
8-1. 위상 정렬의 조건
8-2. 위상 정렬의 특징
8-3. 위상 정렬 구현법
8-4. 위상 정렬 템플릿
2. 문제 풀이
기본 문제 1: 줄 세우기
응용 문제 1: 게임 개발
9장 분할 정복
1. 문제 분류 설명
2. 문제 풀이
기본 문제 1: 쿼드 트리
응용 문제 1: 트리의 순회
10장 누적합
1. 문제 분류 설명
10-1. 2차원 배열에서의 누적합
2. 문제 풀이
기본 문제 1: 합 구하기
응용 문제 1: 배나무
11장 최단 거리
1. 문제 분류 설명
11-1. 다익스트라 알고리즘
11-2. 벨만 포드 알고리즘
11-3. 플로이드 워셜 알고리즘
11-4. 어떤 최단 거리 알고리즘을 고를 것인가?
2. 문제 풀이
기본 문제 1: 최단 경로
기본 문제 2: 타임머신
기본 문제 3: 플로이드
12장 트라이
1. 문제 분류 설명
12-1. ant와 air를 트라이에 추가하는 경우
12-2. 트라이 노드에 더 많은 정보를 추가하여 활용
2. 문제 풀이
기본 문제 1: 접두사 찾기
응용 문제 1: 게임 닉네임
