상세정보
Do it! 알고리즘 코딩 테스트 - 파이썬 편
- 저자
- 김종관 저
- 출판사
- 이지스퍼블리싱 (주)
- 출판일
- 2022-08-22
- 등록일
- 2023-07-11
- 파일포맷
- PDF
- 파일크기
- 14MB
- 공급사
- YES24
- 지원기기
-
PC
PHONE
TABLET
웹뷰어
프로그램 수동설치
뷰어프로그램 설치 안내
책소개
기출 유형 분석부터 문제 풀이 비법까지
코딩 테스트를 처음 준비하는 IT 기업 취준생의 필독서!
“코딩 테스트를 제대로 준비하려면 어떤 문제를 얼마나 풀어야 할까?” 곧 코딩 테스트를 앞둔 취업 또는 이직 준비생이라면 누구나 이런 고민을 할 것이다. 『Do it! 알고리즘 코딩 테스트 - 파이썬 편』에 그 답이 있다. 네이버, 카카오, 삼성, 라인 등 주요 IT 기업의 시험에 나오는 알고리즘 내용이 모두 담겨 있어 책 한 권만으로 코딩 테스트 합격에 필요한 지식을 충분히 공부할 수 있다. 책에 수록된 알고리즘 문제 100개는 모두 최신 기출 유형을 반영하고 있어서 이 책의 문제만 다 풀면 당장 코딩 테스트를 볼 수 있는 수준까지 실력을 갖출 수 있다. 모든 문제는 ‘분석, 전략, 슈도코드, 코드 구현’까지 총 4단계를 거쳐 푸는데, 이렇게 문제를 푸는 습관까지 자기 것으로 만든다면 진짜 시험에서 어떤 문제를 만나든 실수 없이 해결할 수 있을 것이다.
저자소개
국내 IT 기업에서 개발자로 12년째 일하고 있다. 5년 전 사내 직원을 대상으로 한 알고리즘 코딩 테스트 강의를 시작으로 지금까지 알고리즘을 비롯한 다양한 강의 활동도 병행하고 있다. 코딩 테스트 강의를 하며 만난 학생들이 작은 실수로 아쉽게 당락이 좌우되는 걸 보며 알고리즘의 개념뿐 아니라 실수를 줄여 주는 문제 풀이 방법, 코딩 테스트에서 떨어지지 않는 작은 팁까지 담아 이 책을 집필했다. 다양한 IT 분야에 관심이 있고, 공부한 내용을 누구나 쉽게 이해할 수 있도록 알려 주는 것을 좋아한다. 2019년에는 정보관리기술사 자격을 취득했고, 이 경험을 바탕으로 『핵심 정보통신기술 총서 8 - 알고리즘 통계』(한울아카데미)를 함께 집필했다. 최근에는 관심 영역을 IT 경영과 코드 리뷰, 리팩토링 분야로 넓히고 있다.
목차
첫째마당 코딩 테스트 준비하기
01 어떤 알고리즘으로 풀어야 할까?
__01-1 시간 복잡도 표기법 알아보기
__01-2 시간 복잡도 활용하기
____[000] 수 정렬하기
02 코드의 논리 오류를 어떻게 잡을까?
__02-1 디버깅은 왜 중요할까?
__02-2 디버깅 활용 사례 살펴보기
둘째마당 Do it! 코딩 테스트 - 기초 편
03 자료구조
__03-1 배열과 리스트
____[001] 숫자의 합 구하기
____[002] 평균 구하기
__03-2 구간 합
____[003] 구간 합 구하기 1
____[004] 구간 합 구하기 2
____[005] 나머지 합 구하기
__03-3 투 포인터
____[006] 연속된 자연수의 합 구하기
____[007] 주몽의 명령
____[008] ‘좋은 수’ 구하기
__03-4 슬라이딩 윈도우
____[009] DNA 비밀번호
____[010] 최솟값 찾기 1
__03-5 스택과 큐
____[011] 스택으로 수열 만들기
____[012] 오큰수 구하기
____[013] 카드 게임
____[014] 절댓값 힙 구현하기
04 정렬
__04-1 버블 정렬
____[015] 수 정렬하기 1
____[016] 버블 정렬 프로그램 1
__04-2 선택 정렬
____[017] 내림차순으로 자릿수 정렬하기
__04-3 삽입 정렬
____[018] ATM 인출 시간 계산하기
__04-4 퀵 정렬
____[019] K번째 수 구하기
__04-5 병합 정렬
____[020] 수 정렬하기 2
____[021] 버블 정렬 프로그램 2
__04-6 기수 정렬
____[022] 수 정렬하기 3
05 탐색
__05-1 깊이 우선 탐색
____[023] 연결 요소의 개수 구하기
____[024] 신기한 소수 찾기
____[025] 친구 관계 파악하기
__05-2 너비 우선 탐색
____[026] DFS와 BFS 프로그램
____[027] 미로 탐색하기
____[028] 트리의 지름 구하기
__05-3 이진 탐색
____[029] 원하는 정수 찾기
____[030] 블루레이 만들기
____[031] 배열에서 K번째 수 찾기
06 그리디
__06-1 그리디 알고리즘
____[032] 동전 개수의 최솟값 구하기
____[033] 카드 정렬하기
____[034] 수를 묶어서 최댓값 만들기
____[035] 회의실 배정하기
____[036] 최솟값을 만드는 괄호 배치 찾기
07 정수론
__07-1 소수 구하기
____[037] 소수 구하기
____[038] 거의 소수 구하기
____[039] 소수 & 팰린드롬 수 중에서 최솟값 찾기
____[040] 제곱이 아닌 수 찾기
__07-2 오일러 피
____[041] 오일러 피 함수 구현하기
__07-3 유클리드 호제법
____[042] 최소 공배수 구하기
____[043] 최대 공약수 구하기
____[044] 칵테일 만들기
__07-4 확장 유클리드 호제법
____[045] Ax + By = C
셋째마당 Do it! 코딩 테스트 - 실전 편
08 그래프
__08-1 그래프의 표현
____[046] 특정 거리의 도시 찾기
____[047] 효율적으로 해킹하기
____[048] 이분 그래프 판별하기
____[049] 물의 양 구하기
__08-2 유니온 파인드
____[050] 집합 표현하기
____[051] 여행 계획 짜기
____[052] 거짓말쟁이가 되긴 싫어
__08-3 위상 정렬
____[053] 줄 세우기
____[054] 게임 개발하기
____[055] 임계 경로 구하기
__08-4 다익스트라
____[056] 최단 경로 구하기
____[057] 최소 비용 구하기
____[058] K번째 최단 경로 찾기
__08-5 벨만-포드
____[059] 타임머신으로 빨리 가기
____[060] 세일즈맨의 고민
__08-6 플로이드-워셜
____[061] 가장 빠른 버스 노선 구하기
____[062] 경로 찾기
____[063] 케빈 베이컨의 6단계 법칙
__08-7 최소 신장 트리
____[064] 최소 신장 트리 구하기
____[065] 다리 만들기
____[066] 불우이웃돕기
09 트리
__09-1 트리 알아보기
____[067] 트리의 부모 찾기
____[068] 리프 노드의 개수 구하기
__09-2 트라이
____[069] 문자열 찾기
__09-3 이진 트리
____[070] 트리 순회하기
__09-4 세그먼트 트리
____[071] 구간 합 구하기 3
____[072] 최솟값 찾기 2
____[073] 구간 곱 구하기
__09-5 최소 공통 조상
____[074] 최소 공통 조상 구하기 1
____[075] 최소 공통 조상 구하기 2
10 조합
__10-1 조합 알아보기
____[076] 이항계수 구하기 1
____[077] 이항계수 구하기 2
____[078] 부녀회장이 될 테야
____[079] 다리 놓기
____[080] 조약돌 꺼내기
____[081] 순열의 순서 구하기
____[082] 사전 찾기
____[083] 선물 전달하기
11 동적 계획법
__11-1 동적 계획법 알아보기
____[084] 정수를 1로 만들기
____[085] 퇴사 준비하기
____[086] 이친수 구하기
____[087] 2*N 타일 채우기
____[088] 계단 수 구하기
____[089] 연속된 정수의 합 구하기
____[090] 최장 공통 부분 수열 찾기
____[091] 가장 큰 정사각형 찾기
____[092] 빌딩 순서 구하기
____[093] DDR을 해보자
____[094] 행렬 곱 연산 횟수의 최솟값 구하기
____[095] 외판원의 순회 경로 짜기
____[096] 가장 길게 증가하는 부분 수열 찾기
12 기하
__12-1 기하 알아보기
____[097] 선분 방향 구하기
____[098] 선분의 교차 여부 구하기
____[099] 선분을 그룹으로 나누기
____[100] 다각형의 넓이 구하기
찾아보기