길벗·이지톡

도서 IT전문서/IT입문서 프로그래밍/오픈소스
핵심 개념, 81개 문제풀이, 코딩전문역량인증시험(PCCP) 대비까지! 취업과 이직을 위한 프로그래머스 코딩 테스트 문제 풀이 전략: 파이썬 편
정 가
40,000원
I S B N
9791140702893
출 간
2023-02-24
분 량
704쪽
지 은 이
김범수
난 이 도
초급,중급,고급
부 록
예제 소스 코드

합격에 한 걸음 더 가까워지는 실전형 코딩 테스트 문제 풀이 가이드

핵심 개념, 프로그래머스에서 선별한 81개 문제 풀이, PCCP 대비까지!

합격에 한 걸음 더 가까워지는 실전형 코딩 테스트 문제 풀이 가이드

개발자 취업과 이직의 필수 관문, 코딩 테스트! 어떻게 준비해야 할까? 이 책은 시간 복잡도, 배열, 문자열, 정렬, 이진 탐색, 완전 탐색, 해시, 동적 프로그래밍, 자주 나오는 자료 구조 등 코딩 테스트에 필요한 핵심 지식을 모두 담고 있다. 단순히 문제를 풀어보는 것에서 그치지 않고, 문제를 분석하고, 요구 조건을 체크하고, 다양한 접근법으로 설계한 내용을 구현하며 문제를 푸는 생각의 흐름을 완성할 수 있게 도와준다. 또한, 기본 문제 풀이 외에 핵심 개념 및 다양한 풀이를 함께 살펴보며, 방금 푼 그 문제를 100% 내 것으로 만들 수 있게 구성했다. 프로그래머스의 노하우가 담긴 문제를 선별해 담았으며, 파이썬스러운 문제 풀이와 해결법으로 파이썬을 좀 더 깊이 있게 이해할 수 있다. 마지막으로 카카오 블라인드 테스트와 코딩전문역량인증시험(PCCP) 모의고사 문제를 책에서 배운 내용들을 이용해 풀어보면서 실전 감각을 키울 수 있다. 취업과 이직을 위해 코딩 테스트를 준비한다면 이 책으로 시작해보자.

 

목차

1장. 코딩 테스트

1.1 코딩 테스트란? 

1.2 코딩 테스트를 보는 이유 

_1.2.1 문제 해결 과정을 보는 것 

_1.2.2 모든 것의 기초, 생각하는 실력을 다지는 것

_1.2.3 똑같은 결과를 빠르고, 효율적으로 

1.3 코딩과 디버깅 

_1.3.1 잘 짠 코드란 무엇인가? 

_1.3.2 코드를 짤 때 흔히 하는 실수 

_1.3.3 디버깅과 시행착오 줄이기

 

2장. 시간 복잡도

2.1 시간 복잡도란? 

_2.1.1 빅오(Big-O) 표기법 

_2.1.2 시간 복잡도 그래프 

_2.1.3 시간 복잡도 선택 시 참고할 만한 사항 

2.2 시간 복잡도 계산하기 

_2.2.1 어림짐작해보기 

_2.2.2 시간 복잡도 줄이기

_2.2.3 여러 상황에서의 시간 복잡도 생각해보기

 

3장. 배열

3.1 2차원 배열 이해하기 

_3.1.1 1차원 배열 + 1차원 배열? 

_3.1.2 배열을 다양하게 생각해보기

3.2 2차원 배열 다뤄보기 

_3.2.1 2차원 배열 응용

[문제 01] 교점에 별 만들기 - Level 2

[문제 02] 행렬 테두리 회전하기 - Level 2 

_3.2.2 dx dy로 방향을 정하는 방법 

[문제 03] 삼각 달팽이 - Level 2

[문제 04] 거리두기 확인하기 - Level 2 

_3.2.3 연산(숫자) 

[문제 05] 행렬의 곱셈 - Level 2

 

4장. 문자열

4.1 문자열이란 

_4.1.1 문자열의 특징 

_4.1.2 문자열을 다른 방식으로 생각해보기 

[문제 06] 시저 암호 - Level 1 

[문제 07] 이상한 문자 만들기 – Level 1 

4.2 문자열 다뤄보기 

_4.2.1 문자열 응용하기 

[문제 08] 튜플 – Level 2 

[문제 09] 짝지어 제거하기 – Level 2 

[문제 10] 문자열 압축 – Level 2

_4.2.2 진법 바꾸기 

[문제 11] 3진법 뒤집기 - Level 1 

[문제 12] 이진 변환 반복하기 - Level 2 

_4.2.3 찾아서 바꾸기 

[문제 13] 신규 아이디 추천 - Level 1 

4.3 정규표현식 

_4.3.1 정규표현식이란 

[문제 14] 문자열 다루기 기본 - Level 1 

[문제 15] 핸드폰 번호 가리기 - Level 1 

 

5장. 재귀

5.1 재귀 함수란? 

_5.1.1 for 문에서 벗어나기 

_5.1.2 재귀의 최대 범위와 한계점 기억하기

_5.1.3 참고: 꼬리 재귀 

5.2 재귀 정의하기 

_5.2.1 상태 정의하기 

_5.2.2 종료 조건 

_5.2.3 점화식 세우기 

5.3 다양한 문제 풀이 

[문제 16] 콜라츠 추측 - Level 1 

[문제 17] 하노이의 탑 - Level 3 

[문제 18] 모음 사전 - Level 2 

[문제 19] 호텔 방 배정 - Level 4

 

6장. 완전 탐색

6.1 완전 탐색이란? 

_6.1.1 문제를 이해하는 방법 

_6.1.2 상태와 상태 전이 진행 

_6.1.3 완전 탐색의 종류와 사용되는 자료 구조 

_6.1.4 방문 처리/백트래킹

6.2 다양한 문제 풀이 

[문제 20] 모의고사 – Level 1 

[문제 21] 카펫 – Level 2 

[문제 22] 소수 찾기 – Level 2 

[문제 23] 불량 사용자 - Level 3 

[문제 24] 수식 최대화 - Level 2

 

7장. 정렬

7.1 정렬이란 

_7.1.1 정렬의 기준 잡기 

_7.1.2 정렬의 종류

7.2 정렬하기 

_7.2.1 기본 기준 사용하기 

[문제 25] 두 개 뽑아서 더하기 - Level 1 

[문제 26] H-index - Level 2 

_7.2.2 직접 기준 정하기 

[문제 27] 문자열 내 마음대로 정렬하기 - Level 1 

[문제 28] 가장 큰 수 - Level 2

 

8장. 이진 탐색

8.1 이진 탐색이란? 

_8.1.1 이진 탐색이 가지는 이점 

_8.1.2 구현 방법 

8.2 탐색 효율 높이기 

_8.2.1 정렬 기준 정하기

_8.2.2 파라메트릭 서치

8.3 다양한 문제 풀이 

[문제 29] 입국심사 - Level 3 

[문제 30] 순위 검색 - Level 2 

[문제 31] 징검다리 - Level 4 

[문제 32] 징검다리 건너기 - Level 3

 

9장. 해시

9.1 해시란 

_9.1.1 해시 테이블이란 

_9.1.2 해시의 시간 복잡도 

9.2 다양한 문제 풀이 

[문제 33] 완주하지 못한 선수 - Level 1 

[문제 34] 전화번호 목록 - Level 2 

[문제 35] 위장 - Level 2 

[문제 36] 오픈 채팅방 - Level 2 

[문제 37] 베스트 앨범 - Level 3 

 

10장. 동적 프로그래밍

10.1 연산 줄이기 

_10.1.1 완전 탐색의 문제점 

[문제 38] 피보나치 수 - Level 2 

_10.1.2 동적 프로그래밍의 핵심, 메모이제이션

_10.1.3 구현 방법 

10.2 다양한 문제 풀이 

[문제 39] N으로 표현 - Level 3 

[문제 40] 정수 삼각형 - Level 3 

[문제 41] 등굣길 - Level 3 

[문제 42] 도둑질 - Level 4

 

11장. 자주 등장하는 자료 구조

11.1 스택과 큐 

_11.1.1 스택 

_11.1.2 큐와 덱  

_11.1.3 다양한 문제 풀이

[문제 43] 주식 가격 - Level 2 

[문제 44] 기능 개발 - Level 2 

11.2 그래프와 트리 

_11.2.1 그래프란 

_11.2.2 트리란 

_11.2.3 다양한 문제 풀이

[문제 45] 가장 먼 노드 - Level 3 

[문제 46] 순위 - Level 3 

[문제 47] 길 찾기 게임 - Level 3 

11.3 잊을 만하면 나오는 자료 구조 

_11.3.1 우선순위 큐 467

[문제 48] 디스크 컨트롤러 - Level 3

_11.3.2 투 포인터 473

[문제 49] 보석 쇼핑 - Level 3 

_11.3.3 유니온 파인드

[문제 50] 섬 연결하기 - Level 3 

_11.3.4 트라이 

[문제 51] 가사 검색 - Level 4

 

12장. 구현

12.1 주의해야 할 점 

_12.1.1 구현이 어려운 문제인 이유 

_12.1.2 문제 나눠서 생각하기: 모듈화 

_12.1.3 오류에 빠르게 대처하기 

12.2 문제에서 이야기하는 대로 만들기 

_12.2.1 규칙 찾아보기 

_12.2.2 다양한 문제 풀이 

[문제 52] 키패드 누르기 - Level 1 

[문제 53] 2개 이하로 다른 비트 - Level 2 

[문제 54] 스킬 트리 - Level 2 

[문제 55] 줄 서는 방법 - Level 2

12.3 완전 탐색 기반으로 풀기 

_12.3.1 깊이 우선 탐색(DFS) 

[문제 56] 타깃 넘버 - Level 2 

[문제 57] 여행 경로 - Level 3 

[문제 58] 네트워크 - Level 3 

[문제 59] 괄호 변환 - Level 2 

_12.3.2 너비 우선 탐색(BFS) 

[문제 60] 단어 변환 - Level 3 

[문제 61] 게임 맵 최단거리 - Level 3 

[문제 62] 경주로 건설 - Level 3 

12.4 탐욕 알고리즘 

_12.4.1 현재 상황에서의 최선 

_12.4.2 탐욕 알고리즘을 사용할 수 있는 경우와 사용할 수 없는 경우 

_12.4.3 다양한 문제 풀이 

[문제 63] 조이스틱 - Level 2 

[문제 64] 큰 수 만들기 - Level 2 

[문제 65] 구명보트 - Level 2 

[문제 66] 단속 카메라 - Level 3

 

13장. 도전: 카카오 2022 블라인드 테스트

[문제 67] 신고 결과 받기 - Level 1 

[문제 68] k진수에서 소수 개수 구하기 - Level 2

[문제 69] 주차 요금 계산 - Level 2 

[문제 70] 양궁대회 - Level 2 

[문제 71] 양과 늑대 - Level 3 

[문제 72] 파괴되지 않은 건물 - Level 3 

[문제 73] 사라지는 발판 - Level 3

 

14장. 코딩전문역량인증시험, PCCP 모의고사

14.1 PCCP 모의고사 1회 

[문제 74] 외톨이 알파벳 - Level 1 

[문제 75] 체육대회 - Level 2 

[문제 76] 유전법칙 - Level 2 

[문제 77] 운영체제 - Level 3 

14.2 PCCP 모의고사 2회

[문제 78] 실습용 로봇 - Level 1

[문제 79] 신입 사원 교육 - Level 2

[문제 80] 카페 확장 - Level 2

[문제 81] 보물 지도 - Level 3 

 

더보기접기

저자&기여자

ㆍ지은이 김범수

소개
어렸을 때부터 IT에 푹 빠져 있던 나머지 중학교 때부터 개발 공부를 시작했다. 현재는 크리에이터 굿즈 마켓 모음집 '트웬티' 앱을 개발 중이며, 신기술에 흥미가 많아 서빙로봇 '봉구'를 직접 개발해보기도 했고, 그 외에 다방면 분야에서 손이 닿는 대로 이것저것 도전해보고 있다.

저작권 안내

모든 자료는 저작권법의 보호를 받는 저작물로, 허락 없이 편집하거나 다른 매체에 옮겨 실을 수 없습니다.
인공지능(AI) 기술 또는 시스템을 훈련하기 위해 자료의 전체 내용은 물론 일부도 사용하는 것을 금지합니다.

All materials are protected by copyright law and may not be edited or reproduced in other media without permission.
It is prohibited to use all or part of the materials, including for training artificial intelligence (AI) technologies or systems, without authorization.

연관 프로그램

아래 프로그램은 길벗출판사가 제공하는 것이 아닙니다.
무료로 사용할 수 있는 정보를 안내해 드리니, 지원이 필요하면 해당 프로그렘 제작사로 문의해 주세요.