코딩 테스트 합격자 되기(C++ 편) pdf 다운로드를 무료로 제공합니다 신입 사원 코딩 테스트를 준비하고 계신가요? 코딩 테스트는 문제만 열심히 푼다고 통과할 수 없습니다. 시험은 전략적으로 준비해야 합니다
관련 교재 pdf 모음
책 소개
코딩 테스트는 IT 기업에 입사하려면 꼭 넘어야 하는 허들입니다. 코딩 테스트 준비는 무작정 많은 문제를 푼다고 합격할 수 있을까요? 저자는 아니라고 말합니다. 대부분의 코딩 테스트는 기업이 응시자에게 요구하는 기준에 맞춰 문제를 구성하게 되어 있습니다. 그러니 그 기준에 맞는 빈출문제로 전략적인 코테 대비를 하는 것이 훨씬 합격에 유리하죠. 《코딩 테스트 합격자 되기》(C++ 편)은 프로그래머스를 통해 기업 코딩 테스트에 출제되었던 문제 97개를 카테고리별로 나누고, 빈출 순서로 배치하였습니다. 한마디로 여러분의 코테 합격을 위한 문제들을 유형, 중요 순서로 가득 채운 책이죠. 또한 여러분이 코테 시험 전에 꼭 알아야 할 코테 공부 마인드셋부터 C++ 문법 돌아보기, 자료구조·알고리즘 이론까지 꽉꽉 채웠습니다. 단순히 문제만 풀어주는 것이 아니라 원리를 제대로 이해할 수 있게 해주죠. 분명 면접에도 큰 도움이 될 것입니다. 저자는 코드도 중요하지만 문제를 풀기 위해 고민하는 과정이 더 중요하다고 이야기합니다. 문제 해결 단위 중심으로 슈도 코드를 작성해서 시간 낭비를 줄이고, 그림을 그려 문제의 핵심을 더 쉽게 파악하고, 시간 복잡도를 미리 생각해서 불필요한 알고리즘을 제외하고 적절한 알고리즘을 선택하라고 이야기하죠. 다만 처음부터 여러분이 이렇게 하기는 쉽지 않습니다. 그래서 본문은 슈도 코드 보기 ➝ 그림으로 생각하기 ➝ 시간 복잡도 고려하기의 구성으로 쓰여 있습니다. 단순히 문제만 풀어주는 책이 아닙니다. 올바른 코딩 테스트 습관을 들여 합격률을 올려주는 책입니다.
코딩 테스트 합격자 되기(C++ 편)
[첫째 마당 : 코딩 테스트 사전 준비]
00장 코딩 테스트를 준비하기 전에
__00-1 합격자가 꼭 되고 싶은 여러분
__타인의 풀이를 보면 사고를 넓힐 수 있다
__나만의 테스트 케이스를 추가하는 건 좋은 알고리즘을 생각할 때 도움이 된다
__00-2 아는 것과 모르는 것을 명확하게
__첫 번째, 기록하라
__두 번째, 시험 보듯 공부하라
__세 번째, 짧은 시간 공부해서는 절대 코딩 테스트를 통과할 수 없다
__네 번째, 나만의 언어로 요약하라
01장 코딩 테스트 효율적으로 준비하기
__01-1 언어 선택하기
__01-2 문제 분석 연습하기
__첫 번째, 문제를 쪼개서 분석하라
__두 번째, 제약 사항을 파악하고 테스트 케이스를 추가하라
__세 번째, 입력값을 분석하라
__네 번째, 핵심 키워드를 파악하라
__다섯 번째, 데이터 흐름이나 구성을 파악하라
__01-3 의사 코드로 설계하는 연습하기
__첫 번째, 세부 구현이 아닌 동작 중심으로 작성하라
__두 번째, 문제 해결 순서로 작성하라
__세 번째, 충분히 테스트하라
02장 프로그래머스 완벽 활용 가이드
__02-1 프로그래머스는 어떤 곳인가요?
__02-2 프로그래머스 활용 가이드
__프로그래머스 살펴보기
__문제 풀이 과정 살펴보기
__02-3 문제 풀이 전 준비사항
03장 알고리즘의 효율 분석
__03-1 시간 복잡도란?
__1차원 배열 검색하기
__알고리즘 수행 시간을 측정하는 방법
__최악의 경우 시간 복잡도를 표현하는 빅오 표기법
__시간 복잡도를 코딩 테스트에 활용하는 방법
__03-2 시간 복잡도 계산해보기
__별 찍기 문제
__박테리아 수명 문제
04장 코딩 테스트 필수 문법
__04-1 프리미티브 타입과 레퍼런스 타입
__정수형
__부동소수형
__문자열
__04-2 STL
__STL
__STL과 자주 사용하는 필수 문법
__반복자
__04-3 STL의 컨테이너
__벡터
__셋
__맵
__정렬되지 않은 셋과 맵
__04-4 STL의 알고리즘
__count( ) 함수로 횟수 세기
__sort( ) 함수로 정렬하기
__next_permutation( ) 함수로 순열 생성하기
__unique( ) 함수로 중복 정리하기
__binary_search( ) 함수로 이진 탐색하기
__max_element( ), min_element( ) 함수로 최댓값, 최솟값 위치 구하기
__04-5 함수
__함수 정의
__함수 호출
__04-6 코딩 테스트 코드 구현 노하우
__조기 반환
__보호 구문
[둘째 마당 : 코딩 테스트 완전 정복]
05장 배열
__05-1 배열 개념
__배열 선언
__배열과 차원
__05-2 배열의 효율성
__배열 연산의 시간 복잡도
__배열을 선택할 때 고려할 점
__05-3 몸풀기 문제
__[문제 01] 배열 정렬하기★
__[문제 02] 배열 제어하기★★
__05-4 합격자가 되는 모의 테스트
__[문제 03] 두 수를 뽑아서 더하기★
__[문제 04] 모의고사★
__[문제 05] 행렬의 곱셈★
__[문제 06] 실패율★★
__[문제 07] 방문 길이★★
06장 스택
__06-1 스택 개념
__스택의 동작 원리 이해하기
__06-2 스택의 정의
__스택의 ADT
__06-3 몸풀기 문제
__[문제 08] 괄호 짝 맞추기★★
__[문제 09] 10진수를 2진수로 변환하기★
__06-4 합격자가 되는 모의 테스트
__[문제 10] 괄호 회전하기★
__[문제 11] 짝지어 제거하기★
__[문제 12] 주식 가격★★
__[문제 13] 크레인 인형 뽑기 게임★★
__[문제 14] 표 편집★★★★★
07장 큐
__07-1 큐의 개념
__큐에서 데이터가 이동하는 과정 살펴보기
__큐의 특성을 활용하는 분야
__큐의 ADT
__07-2 몸풀기 문제
__[문제 15] 요세푸스 문제★★
__07-3 합격자가 되는 모의 테스트
__[문제 16] 기능 개발★★
__[문제 17] 카드 뭉치★★
08장 해시
__08-1 해시의 개념
__해시 자세히 알아보기
__해시의 특성을 활용하는 분야
__08-2 해시 함수
__해시 함수를 구현할 때 고려할 내용
__자주 사용하는 해시 함수 알아보기
__08-3 충돌 처리
__체이닝으로 처리하기
__개방 주소법으로 처리하기
__08-4 몸풀기 문제
__[문제 18] 두 개의 수로 특정값 만들기★
__[문제 19] 문자열 해싱을 이용한 검색 함수 만들기★★
__08-5 합격자가 되는 모의 테스트
__[문제 20] 완주하지 못한 선수★
__[문제 21] 영어 끝말잇기★
__[문제 22] 전화번호 목록★★
__[문제 23] 할인 행사★★
__[문제 24] 오픈 채팅방★★
__[문제 25] 베스트 앨범★★
__[문제 26] 신고 결과 받기★★
__[문제 27] 메뉴 리뉴얼★★★
09장 트리
__09-1 트리 개념
__나무를 거꾸로 뒤집어 놓은 모양의 트리
__09-2 이진 트리 표현하기
__배열로 표현하기
__이진 트리 순회하기
__포인터로 표현하기
__인접 리스트로 표현하기
__09-3 이진 트리 탐색하기
__이진 탐색 트리 구축하기
__이진 탐색 트리 탐색하기
__이진 탐색 트리와 배열 탐색의 효율 비교
__09-4 몸풀기 문제
__[문제 28] 트리 순회★
__[문제 29] 이진 탐색 트리 구현★
__09-5 합격자가 되는 모의 테스트
__[문제 30] 예상 대진표★
__[문제 31] 다단계 칫솔 판매★★
__[문제 32] 길 찾기 게임★★★★
10장 집합
__10-1 집합과 상호배타적 집합의 개념
__집합의 개념
__상호배타적 집합의 특성을 활용하는 분야
__10-2 집합의 연산
__배열을 활용한 트리로 집합 표현하기
__유니온-파인드 알고리즘
__10-3 몸풀기 문제
__[문제 33] 간단한 유니온-파인드 알고리즘 구현하기★★
__10-4 합격자가 되는 모의 테스트
__[문제 34] 폰켓몬★
__[문제 35] 섬 연결하기★★★
11장 그래프
__11-1 그래프의 개념
__그래프 용어 정리
__그래프의 특징과 종류
__그래프 구현
__11-2 그래프 탐색
__깊이 우선 탐색
__너비 우선 탐색
__깊이 우선 탐색과 너비 우선 탐색 비교
__11-3 그래프 최단 경로 구하기
__다익스트라 알고리즘
__벨만-포드 알고리즘
__11-4 몸풀기 문제
__[문제 36] 깊이 우선 탐색 순회★
__[문제 37] 너비 우선 탐색 순회★
__[문제 38] 다익스트라 알고리즘★★★
__[문제 39] 벨만-포드 알고리즘★★★
__11-5 합격자가 되는 모의 테스트
__[문제 40] 미로 탈출★★
__[문제 41] 게임 맵 최단 거리★★
__[문제 42] 네트워크★★
__[문제 43] 양과 늑대★★★★★
__[문제 44] 배달★★★
__[문제 45] 경주로 건설★★★★★
__[문제 46] 전력망을 둘로 나누기★★
12장 백트래킹
__12-1 백트래킹과 백트래킹 알고리즘 개념
__백트래킹이란?
__백트래킹 알고리즘이란?
__유망 함수란?
__백트래킹 알고리즘 문제에 적용해보기
__N-퀸 문제
__12-2 몸풀기 문제
__[문제 47] 1부터 N까지 숫자 중 합이 10이 되는 조합 구하기★
__[문제 48] 스도쿠 퍼즐★★★
__12-3 합격자가 되는 모의 테스트
__[문제 49] 피로도★
__[문제 50] N-퀸★
__[문제 51] 양궁 대회★★
__[문제 52] 외벽 점검★★★★★
__[문제 53] 사라지는 발판★★★★★
13장 정렬
__13-1 정렬 개념
__정렬이 필요한 이유
__삽입 정렬
__병합 정렬
__힙 정렬
__우선순위 큐
__계수 정렬
__위상 정렬
__13-2 몸풀기 문제
__[문제 54] 계수 정렬 구현하기★
__[문제 55] 정렬이 완료된 두 배열 합치기★
__13-3 합격자가 되는 모의 테스트
__[문제 56] 문자열 내 마음대로 정렬하기★
__[문제 57] 정수 내림차순으로 배치하기★
__[문제 58] K번째 수★
__[문제 59] 가장 큰 수★★★
__[문제 60] 튜플★★
__[문제 61] 지형 이동★★★★
14장 시뮬레이션
__14-1 시뮬레이션 문제 풀이 노하우
__시뮬레이션 문제를 푸는 방법
__행렬 연산
__좌표 연산
__대칭, 회전 연산
__14-2 몸풀기 문제
__[문제 62] 배열 회전하기★★
__[문제 63] 두 행렬을 곱한 후 전치 행렬 만들기★
__[문제 64] 달팽이 수열 만들기★★
__14-3 합격자가 되는 모의 테스트
__[문제 65] 이진 변환★★
__[문제 66] 롤케이크 자르기★★
__[문제 67] 카펫★★
__[문제 68] 점프와 순간 이동★★
__[문제 69] 캐릭터의 좌표★★
15장 동적 계획법
__15-1 동적 계획법 개념
__점화식 세우기와 동적 계획법
__재귀 호출의 횟수를 줄여주는 메모이제이션
__최장 증가 부분 수열
__최장 공통 부분 수열
__15-2 몸풀기 문제
__[문제 70] LCS 길이 계산하기★★★
__[문제 71] LIS 길이 계산하기★★★
__[문제 72] 조약돌 문제★★★
__15-3 합격자가 되는 모의 테스트
__[문제 73] 피보나치 수★
__[문제 74] 2 × n 타일링★
__[문제 75] 정수 삼각형★★
__[문제 76] 땅따먹기★★
__[문제 77] 도둑질★★★★★
__[문제 78] 가장 큰 정사각형 찾기★★★
__[문제 79] 단어 퍼즐★★★★
16장 그리디
__16-1 그리디 개념
__그리디 알고리즘으로 거스름돈 내어주기
__그리디 알고리즘이 최적해를 보장하려면?
__16-2 최소 신장 트리
__신장 트리란?
__최소 신장 트리란?
__16-3 배낭 문제
__짐을 쪼갤 수 있는 부분 배낭 문제
__짐을 쪼갤 수 없는 0/1 배낭 문제
__16-4 몸풀기 문제
__[문제 80] 거스름돈 주기★★
__[문제 81] 부분 배낭 문제★★
__16-5 합격자가 되는 모의 테스트
__[문제 82] 예산★
__[문제 83] 구명보트★
__[문제 84] 귤 고르기★★
__[문제 85] 기지국 설치★★
[부록 1 : 모의고사]
_01회 모의고사
__[문제 86] 미로 탈출 명령어
__[문제 87] 택배 배달과 수거하기
__[문제 88] 개인 정보 수집 유효기간
_02회 모의고사
__[문제 89] 110 옮기기
__[문제 90] 쿼드 압축 후 개수 세기
__[문제 91] 없는 숫자 더하기
_03회 모의고사
__[문제 92] 불량 사용자
__[문제 93] k진수에서 소수 개수 구하기
__[문제 94] 거리두기 확인하기
_04회 모의고사
__[문제 95] 코딩 테스트 공부
__[문제 96] 두 큐 합 같게 만들기
__[문제 97] 숫자 게임
_05회 모의고사
__[문제 98] 보석 쇼핑
__[문제 99] 파괴되지 않은 건물
__[문제 100] 로또의 최고 순위와 최저 순위