프로그래머스 코딩 테스트 전략: 자바 편 pdf

프로그래머스 코딩 테스트 문제 풀이 전략: 자바 편 김현이 pdf 다운로드를 무료로 제공합니다 개발자 취업과 이직의 필수 관문, 코딩 테스트! 어떻게 준비해야 할까? 이 책은 시간 복잡도, 배열, 문자열, 정렬, 이진 탐색, 완전 탐색, 해시, 동적 프로그래밍, 자주 나오는 자료 구조

관련 교재 pdf 모음

NGINX 쿡북 데릭 디용기 pdf 다운

책 소개

단순히 문제를 풀어보는 것에서 그치지 않고, 문제를 분석하고, 요구 조건을 체크하고, 다양한 접근법으로 설계한 내용을 구현하며 문제를 푸는 생각의 흐름을 완성할 수 있게 도와준다. 또한, 기본 문제 풀이 외에 핵심 개념 및 다양한 풀이를 함께 살펴보며, 방금 푼 그 문제를 100% 내 것으로 만들 수 있게 구성했다. 프로그래머스의 노하우가 담긴 문제를 선별해 담았으며, 자바스러운 문제 풀이와 해결법으로 자바를 좀 더 깊이 있게 이해할 수 있다. 마지막으로 카카오 블라인드 테스트와 코딩전문역량인증시험(PCCP) 모의고사 문제를 책에서 배운 내용들을 이용해 풀어보면서 실전 감각을 키울 수 있다. 취업과 이직을 위해 코딩 테스트를 준비한다면 이 책으로 시작해보자. 개발자는 끊임없이 공부해야 하는 직업이라고 생각합니다. 그중 알고리즘은 매우 중요한 요소 중 하나라고 생각하는데요. 이 책을 읽으면서 기본기를 다시 한 번 다지는 기회가 되었습니다. 특히 저도 코딩 테스트를 여러 번 봤는데, 시험에 나왔던 유형과 비슷한 문제들이 있어 다시금 풀어 보는 재미가 있었습니다. 코딩 테스트를 준비하면서 필요한 설명과 코드가 많이 들어 있어 취업을 준비하는 분들에게 많은 도움이 될 것 같습니다.

프로그래머스 코딩테스트 전략 자바

프로그래머스 코딩 테스트 자바 pdf

1장. 코딩 테스트
1.1 코딩 테스트란? 
1.2 코딩 테스트를 보는 이유 
_1.2.1 문제 해결 과정을 보는 것 
_1.2.2 똑같은 결과를 빠르고, 효율적으로 
1.3 코딩과 디버깅 
_1.3.1 잘 짠 코드란?
_1.3.2 코드를 짤 때 흔히 하는 실수들
_1.3.3 디버깅과 시행착오 줄이기
_1.3.4 직접 설계하며 코드 작성해보기

2장. 시간 복잡도
2.1 시간 복잡도란? 
_2.1.1 빅오 표기법
_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 2차원 배열 이해하기
3.2 2차원 배열 다루어 보기 
_3.2.1 2차원 배열 응용
[문제 01] 교점에 별 만들기 – Level 2
[문제 02] 삼각 달팽이 – Level 2 
_3.2.2 dx, dy로 방향을 정하는 방법 
[문제 03] 거리두기 확인하기 – Level 2
_3.2.3 연산 
[문제 04] 행렬의 곱셈 – Level 2

4장. 문자열
4.1 문자열이란 
_4.1.1 문자열의 특징 
_4.1.2 문자열을 다른 방식으로 생각해보기 
[문제 05] 자연수 뒤집어 배열로 만들기 – Level 1 
[문제 06] 이상한 시저 암호 – Level 1 
[문제 07] 이상한 문자 만들기 – Level 1 
4.2 문자열 다루어 보기
_4.2.1 문자열 응용하기 
[문제 08] 문자열 압축 – Level 2 
_4.2.2 진법 바꾸기 
[문제 09] 3진법 뒤집기 – Level 1 
[문제 10] 이진 변환 반복하기 – Level 2 
_4.2.3 찾기와 바꾸기 
[문제 11] 문자열 내 p와 y의 개수 – Level 1 
[문제 12] 숫자 문자열과 영단어 – Level 1 
4.3 정규표현식 
[문제 13] 문자열 다루기 기본 – Level 1 
[문제 14] 신규 아이디 추천 – Level 1 

5장. 재귀
5.1 재귀란? 
_5.1.1 for 문에서 벗어나기 
_5.1.2 재귀의 최대 범위와 한계점 기억하기
5.2 재귀 정의하기 
_5.2.1 상태 정의하기 
_5.2.2 종료 조건 
_5.2.3 점화식 
5.3 코드 작성하기
_5.3.1 코드 변환하기
_5.3.2 다양한 문제 풀이 
[문제 15] 쿼드압축 후 개수 세기 – Level 2 
[문제 16] 하노이의 탑 – Level 3 
[문제 17] 모음 사전 – Level 2 

6장. 완전 탐색
6.1 완전 탐색이란? 
_6.1.1 상태와 상태 전이 진행 
_6.1.2 완전 탐색의 종류 
_6.1.3 방문 처리
6.2 다양한 문제 풀이 
[문제 18] 모의고사 – Level 1 
[문제 19] 카펫 – Level 2 
[문제 20] 수식 최대화 – Level 2
[문제 21] 소수 찾기 – Level 2 
[문제 22] 불량 사용자 – Level 3 


7장. 정렬
7.1 정렬이란? 
_7.1.1 정렬 기준 잡기 
_7.1.2 정렬 효율 높이기
7.2 정렬하기 
_7.2.1 기본 기준 사용하기 
[문제 23] K번째 수 – Level 1 
[문제 24] 두 개 뽑아서 더하기 – Level 1 
[문제 25] H-Index – Level 2
_7.2.2 직접 기준 정하기 
[문제 26] 문자열 내림차순으로 배치하기
[문제 27] 문자열 내 마음대로 정렬하기 – Level 1 
[문제 28] 가장 큰 수 – Level 2
[문제 29] 메뉴 리뉴얼 – Level 2

8장. 이진 탐색
8.1 이진 탐색이란? 
_8.1.1 이진 탐색이 갖는 이점 
_8.1.2 이진 탐색을 사용할 수 있는 조건 
8.2 탐색 효율 높이기 
_8.2.1 분할 정복
_8.2.2 정렬 기준 정하기
8.3 자바의 이진 탐색 메서드
8.4 다양한 문제 풀이 
[문제 30] 순위 검색 – Level 2
[문제 31] 입국심사 – Level 3 
[문제 32] 징검다리 – Level 4 

9장. 해시
9.1 해시란? 
_9.1.1 해시 테이블
_9.1.2 해시의 시간 복잡도 
9.2 다양한 문제 풀이
[문제 33] 평행 – Level 0
[문제 34] 중복된 문자 제거 – Level 0 
[문제 35] A로 B 만들기 – Level 0
[문제 36] 없는 숫자 더하기 – Level 1
[문제 37] 완주하지 못한 선수 – Level 1 

10장. 동적 프로그래밍
10.1 동적으로 연산 줄이기 
_10.1.1 완전 탐색의 문제점 
_10.1.2 ‘동적 프로그래밍’의 핵심, 메모이제이션
_10.1.3 동적 프로그래밍의 조건
_10.1.4 번외: 순차 누적으로 구현해보기 
10.2 다양한 문제 풀이 
[문제 38] 피보나치 수 – Level 2
[문제 39] 정수 삼각형 – Level 3
[문제 40] 등굣길 – Level 3
[문제 41] 사칙연산 – Level 4

11장. 자주 등장하는 자료 구조
11.1 스택과 큐 
_11.1.1 스택 
[문제 42] 올바른 괄호 – Level 2
[문제 43] 괄호 회전하기 – Level 2
[문제 44]  주식 가격 – Level 2
_11.1.2 큐
[문제 45] 기능 개발 – Level 2
[문제 46] 다리를 지나는 트럭 – Level 2
_11.1.3 덱
11.2 그래프와 트리 
_11.2.1 그래프
[문제 47] 순위 – Level 3
[문제 48] 방의 개수 – Level 5 
_11.2.2 트리와 이진 트리
[문제 49] 길 찾기 게임 – Level 3
11.3 잊을 만하면 나오는 자료 구조 
_11.3.1 우선순위 큐 467
[문제 50] 이중 우선순위 큐 – Level 3 441
[문제 51] 디스크 컨트롤러 – Level 3
_11.3.2 투 포인터 473
[문제 52] 보석 쇼핑 – Level 3 
_11.3.3 유니온 파인드
[문제 53] 섬 연결하기 – Level 3
[문제 54] 호텔 방 배정 – Level 4 
_11.3.4 트라이 
[문제 55] 가사 검색 – Level 4

12장. 구현
12.1 주의해야 할 점 
_12.1.1 구현이 어려운 문제인 이유 
_12.1.2 디버깅 빨리하기 
12.2 문제에서 이야기하는 대로 만들기 
_12.2.1 규칙 찾아보기 
_12.2.2 다양한 문제 풀이 
[문제 56] 스킬 트리 – Level 2
[문제 57] 키패드 누르기 – Level 1
12.3 완전 탐색 기반으로 풀기 
_12.3.1 깊이 우선 탐색(DFS) 
_12.3.2 DFS: 스택
[문제 58] 타깃 넘버 – Level 2 
[문제 59] 네트워크 – Level 3 
_12.3.3 너비 우선 탐색(BFS) 
_12.3.4 BFS: 큐
[문제 60] 단어 변환 – Level 3 
[문제 61] 게임 맵 최단거리 – Level 3 
12.4 그리디 알고리즘 
_12.4.1 현재 상황에서 최선 
_12.4.2 결과적으로 최선인가? 
_12.4.3 다양한 문제 풀이 
[문제 62] 체육복 – Level 1 
[문제 63] 큰 수 만들기 – Level 2 
[문제 64] 단속 카메라 – Level 3

13장. 도전: 카카오 2022 블라인드 테스트
[문제 65] 신고 결과 받기 – Level 1 
[문제 66] k진수에서 소수 개수 구하기 – Level 2
[문제 67] 주차 요금 계산 – Level 2 
[문제 68] 양궁대회 – Level 2 
[문제 69] 양과 늑대 – Level 3 
[문제 70] 파괴되지 않은 건물 – Level 3 
[문제 71] 사라지는 발판 – Level 3

14장. 코딩전문역량인증시험, PCCP 모의고사
14.1 PCCP 모의고사 1회 
[문제 72] 외톨이 알파벳 – Level 1 
[문제 73] 체육대회 – Level 2 
[문제 74] 유전법칙 – Level 2 
[문제 75] 운영체제 – Level 3 
14.2 PCCP 모의고사 2회
[문제 76] 실습용 로봇 – Level 1
[문제 77] 신입 사원 교육 – Level 2
[문제 78] 카페 확장 – Level 2
[문제 79] 보물 지도 – Level 3

Leave a Comment