알고리즘 인사이드 with 파이썬 손혁제 pdf 다운로드를 무료로 제공합니다 오랫동안 많은 IT 기업은 인재를 선발하는 가장 효과적인 도구로 알고리즘 테스트를 활용해왔습니다. 문제 풀이와 개발 능력은 상관없어 보이지만, 알고리즘은 공부하면 할수록 구현 능력
관련 책 pdf 모음
책 소개
이 책은 범용성 높은 프로그래밍 언어인 파이썬을 활용해 코딩 테스트에 자주 등장하는 문제 유형 86개를 풀이하는 과정을 살펴봅니다. 17년 차 S/W 아키텍트이자 개발자인 저자가 알려 주는 실무에도 유용한 해결 코드를 따라가다 보면 사고력과 문제 해결 능력의 기반을 다질 수 있습니다. 알고리즘이 처음인 학생, 코딩 테스트를 앞두고 있는 취준생은 물론이고 역량을 개발하려는 현직 개발자까지 자신의 수준에 맞춰 개념을 학습하고 문제를 풀이할 수 있도록 기본 이론과 문제 풀이, 해설까지 꼼꼼하게 담았습니다. 이론 설명에서 한 발 더 나아가 문제를 명확히 정의하는 과정부터 알고리즘 고안과 구현 그리고 검증까지 전 과정을 체험해볼 수 있었습니다. 프로그래머라면 반드시 알아야 할 기본기인 알고리즘을 배우고 다양한 문제를 해결하면서 레벨업하기에 이 책은 더할 나위 없이 좋은 교재가 될 것입니다.
알고리즘 인사이드 파이썬 pdf 다운
PART 1 파이썬 문법, 핵심만 뽑아보기
Chapter 01 파이썬 기본 문법
1.1 데이터 타입
1.2 조건문과 반복문
1.3 함수와 람다 표현식
1.4 고급 제어
1.5 클래스
1.6 멀티 프로세싱
Chapter 02 정규표현식
2.1 search, match
2.2 compile
2.3 findall과 finditer
PART 2 기본 자료구조와 알고리즘
Chapter 03 핵심 자료구조
3.1 스택
3.2 큐
3.3 원형 큐
3.4 연결 리스트
3.5 해시, 맵
3.6 트리
3.7 힙
3.8 그래프
Chapter 04 기본 알고리즘
4.1 정렬
4.2 그래프 알고리즘
4.3 문자열 검색
PART 3 알고리즘별 문제 풀이Ⅰ
Chapter 05 재귀
5.1 왜 재귀인가?
5.2 재귀 알고리즘의 동작 방식
문제 01 홍수 채우기
문제 02 이진 트리의 최대 깊이
문제 03 괄호 생성하기
문제 04 연결 리스트의 노드 교환하기
Chapter 06 탐색
문제 05 미로 탐색
문제 06 최솟값으로 목적지 찾기
문제 07 생존 게임
문제 08 자물쇠 열기
문제 09 바다와의 거리 구하기
문제 10 썩은 사과
Chapter 07 공간
문제 11 공평하게 콩이 든 가방
문제 12 나선 행렬
문제 13 최소한의 벽돌 뚫기
문제 14 일정 등록
Chapter 08 순열과 조합
8.1 경우의 수
8.2 순열
8.3 조합
문제 15 문자열 순열 생성
문제 16 중복 없는 조합 찾기
문제 17 가장 가까운 시간 생성하기
문제 18 숫자로 만들 수 있는 문자 조합 찾기
Chapter 09 배열
문제 19 필요한 회의실 개수 구하기 3
문제 20 겹치는 구간 병합하기
문제 21 총 공격 시간 계산하기
문제 22 풍선을 모두 터뜨리는 데 필요한 화살 개수
문제 23 최댓값의 부분 배열 찾기
문제 24 두 수의 합으로 목표 값 찾기
문제 25 단조 증가 수열 만들기 Ⅰ
문제 26 유일한 단어 찾기
문제 27 배열의 중복 값 제거하기
문제 28 레이블에서 가장 큰 값 찾기
문제 29 거스름돈 계산하기
문제 30 단조 증가 수열 만들기 Ⅱ
문제 31 이상 거래 감지
Chapter 10 정렬
문제 32 홀수와 짝수로 정렬하기
문제 33 빈도에 따라 정렬하기
문제 34 들쭉날쭉 정렬하기
문제 35 맞춤 정렬하기
문제 36 가장 많이 출현한 단어 정렬하기
문제 37 대각 원소 정렬하기
Chapter 11 검색
문제 38 이진 검색하기
문제 39 정점 찾기
문제 40 정렬된 행렬에서 r번째 값 찾기
문제 41 회전된 배열에서 값 찾기
Chapter 12 문자열
문제 42 가장 짧고 겹치는 문자열 찾기
문제 43 고유한 부분 문자열 만들기
문제 44 UTF-8 검증기
문제 45 최소 길이 부분 문자열 찾기 Ⅰ
문제 46 최소 길이 부분 문자열 찾기 Ⅱ
문제 47 중복 정보 통합하기
문제 48 문자열 섞기
문제 49 해시 값과 일치하는 부분 문자열 찾기
문제 50 문자열로 팰린드롬 만들기
문제 51 부분 문자열로 팰린드롬 만들기
문제 52 문자열에서 애너그램 모두 찾기
문제 53 팰린드롬이 되는 모든 경우의 수 찾기
PART 4 알고리즘별 문제 풀이Ⅱ
Chapter 13 기본 자료구조 활용
문제 54 가장 긴 파일 경로 찾기
문제 55 보다 따뜻한 날
문제 56 괄호 쌍을 만드는 데 필요한 괄호 수 구하기
문제 57 괄호 내 문자열 뒤집기
문제 58 인접 노드와 위치 교환하기
문제 59 연결 리스트 분할하기
문제 60 연속된 노드의 그룹 개수 구하기
문제 61 k만큼 리스트 회전하기
Chapter 14 트리
문제 62 단계 순위 순회로 역방문하기
문제 63 가장 긴 연속 증가 수열 찾기
문제 64 트리의 최대 너비 구하기
문제 65 경로 합으로 목표 값 찾기
문제 66 전위 순회 결과로 트리 생성하기
문제 67 이진 트리의 수직 순위 순회
문제 68 유효한 이진 탐색 트리 찾기
Chapter 15 그래프
문제 69 최소 비용으로 모든 정점 연결하기
문제 70 그래프의 사이클 유무 확인하기
문제 71 두 정점 간 모든 경로 찾기
문제 72 사이클이 없는 정점 찾기
문제 73 네트워크 내 모든 단말 연결하기
문제 74 핵심 도시 파악하기
문제 75 네트워크 지연 시간 계산하기
Chapter 16 숫자
문제 76 숨겨진 수열 찾기
문제 77 k로 나눌 수 있는 쌍의 개수
문제 78 총합이 k인 부분 집합 찾기
문제 79 최댓값 리스트 생성하기
Chapter 17 동적 계획법
문제 80 최솟값으로 삼각형의 경로 구하기
문제 81 최대 크기의 정사각형 찾기
문제 82 비트 1의 개수 구하기
문제 83 n을 만드는 숫자 조합의 수
문제 84 최대 점수로 풍선 터트리기
문제 85 가장 높은 점수로 이분할하기
문제 86 최대 수익을 내는 구간 찾기
부록
Appendix A 시간 복잡도 이해하기