취업과 이직을 위한 프로그래머스 코딩 테스트 문제 풀이 전략 : 자바 편

김현이 (지은이) | 길벗 | 2023년 2월 정가 40,000원 판매가 36,000원 배송비 0원 (0원 이상 무료) 페이지 668쪽 판형 183*235mm 1269g ISBN 9791140702916 상태 새책 or 중고 수량 합계 36,000

책소개

개발자 취업과 이직의 필수 관문, 코딩 테스트! 어떻게 준비해야 할까? 이 책은 시간 복잡도, 배열, 문자열, 정렬, 이진 탐색, 완전 탐색, 해시, 동적 프로그래밍, 자주 나오는 자료 구조 등 코딩 테스트에 필요한 핵심 지식을 모두 담고 있다. 단순히 문제를 풀어보는 것에서 그치지 않고, 문제를 분석하고, 요구 조건을 체크하고, 다양한 접근법으로 설계한 내용을 구현하며 문제를 푸는 생각의 흐름을 완성할 수 있게 도와준다.

또한, 기본 문제 풀이 외에 핵심 개념 및 다양한 풀이를 함께 살펴보며, 방금 푼 그 문제를 100% 내 것으로 만들 수 있게 구성했다. 프로그래머스의 노하우가 담긴 문제를 선별해 담았으며, 자바스러운 문제 풀이와 해결법으로 자바를 좀 더 깊이 있게 이해할 수 있다. 마지막으로 카카오 블라인드 테스트와 코딩전문역량인증시험(PCCP) 모의고사 문제를 책에서 배운 내용들을 이용해 풀어보면서 실전 감각을 키울 수 있다.

저자소개

김현이 (지은이)  
신간알리미 신청
한양대학교 소프트웨어학과를 졸업한 구글 코리아의 소프트웨어 엔지니어이다. 좌우명이 "좋은 코드가 좋은 제품을 만든다"인 만큼, 가독성이 높고 깔끔한 코드를 작성하는 것을 매우 중요하게 생각한다. 회사에서는 본업 외에도 2021년도부터 Google Coding Practice with Kick Start에서 프로그램을 통해 문제 해결을 처음 접하는 분들을 위해 공식 문제 해설과 플랫폼 안내 영상을 촬영하고 있다.

출판사소개

목차

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

더보기

배송

- 배송비, 무료배송비는 업체 사정에 따라 달라질 수 있습니다.
- 배송은 결제 확인 후 다음날부터 2~3일 이내에 배송됩니다. (단 도서 산간지역은 1~2일정도 더 소요됩니다.)
- 공휴일은 배송기간에 포함되지 않습니다.
- 주문하신 상품이 여러개인 경우 동일한 업체의 상품만 묶음 배송 가능합니다. (업체 사정에 따라 달라질 수 있습니다.)
- 배송정보는 상단 주문조회나 마이페이지 주문목록에서 가능합니다.

상품 품절

- 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는 이메일과 문자로 안내드립니다.

주문취소/변경

- 주문 상품에 대한 변경사항(품절,가격변동)이 발생하면 전화나 메일을 통해 변경내용을 알려드립니다.
- 주문 상품의 변경/취소/환불은 배송 시작전 마이페이지에서 직접 신청이 가능합니다.
- 주문 상품이 발송된 시점에서는 변경/취소/환불이 모두 불가능합니다.

반품/교환

- 기간 : 배송받으신 후 7일 이내에 가능합니다.
- 방법 : 홈페이지 마이페이지 > 반품/ 교환 신청 및 조회에서 가능합니다.
- 배송비 부담 : 상품에 이상이 있을시에는 무료, 고객의 단순변심 및 착오구매일 경우 상품 반송비용은 고객 부담입니다.
- 포장 개봉 후 재판매가 불가능한 상품은 반품/교환이 불가능합니다.
- 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우, 반품/교환이 불가능합니다.

반품/교환 불가 사유

- 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우 (단지 확인을 위한 포장 훼손은 제외)
- 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
- 복제가 가능한 상품 등의 포장을 훼손한 경우
- 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우
- 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
- 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
- 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우

소비자 피해보상 환불 지연에 따른 배상

- 상품의 불량에 의한 반품, 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 준하여 처리합니다.
- 대금 환불 및 환불 지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리합니다.

Copyright © 2022 이츠북. All Rights Reserved.