코딩테스트로배우는파이썬:문제풀이로문법과알고리즘을한번에끝내는실전입문서
목차(TableofContents)
시작하며:왜문제부터풀어야할까?
이책의독특한학습법과100%활용가이드
코딩테스트,무엇을어떻게준비해야하는가?
파이썬개발환경준비하기(핵심만빠르게)
Part1.코딩테스트와친해지기:기본입출력과연산
가장기초적인코딩테스트문제를풀며파이썬의기본입출력,변수,연산자사용법을자연스럽게익힙니다.
Chapter1.화면에결과출력하기:print()함수
[개념미리보기]컴퓨터와의첫대화,'말하기'
[문제1-1]HelloWorld!
[문제1-2]A+B출력하기
[배우는파이썬]print()함수의다양한사용법,주석,코드실행원리
Chapter2.사용자에게값입력받기:input()함수와변수
[개념미리보기]컴퓨터의'귀'와'기억상자'
[문제2-1]이름입력받아인사하기
[문제2-2]두수입력받아사칙연산결과출력하기
[배우는파이썬]input()함수의동작방식,변수선언,문자열과숫자형변환
Chapter3.다양한조건처리하기:if조건문
[개념미리보기]프로그램에'생각하는힘'부여하기
[문제3-1]시험성적으로등급나누기
[문제3-2]짝수와홀수판별하기
[배우는파이썬]if-elif-else구조,비교연산자와논리연산자
Part2.데이터를묶어서다루기:핵심자료구조
여러개의데이터를효율적으로관리하는방법을배웁니다.반복문과파이썬의핵심자료구조를문제와함께학습합니다.
Chapter4.반복되는작업자동화하기:for반복문과리스트
[개념미리보기]데이터여러개를담는'바구니'와자동일꾼
[문제4-1]N개의숫자합구하기
[문제4-2]리스트에서최댓값과최솟값찾기
[배우는파이썬]for루프와range(),리스트(List)의생성과인덱싱
Chapter5.특정조건까지반복하기:while반복문
[개념미리보기]"끝날때까지끝난게아니다"-조건기반반복
[문제5-1]0이입력될때까지숫자더하기
[문제5-2]숫자맞추기게임
[배우는파이썬]while루프와무한루프,break로탈출하기
Chapter6.Key로빠르게값찾기:딕셔너리(Dictionary)
[개념미리보기]번호표대신'이름표'로데이터관리하기
[문제6-1]각알파벳의개수세기
[문제6-2]완주하지못한선수찾기
[배우는파이썬]딕셔너리의Key-Value구조,데이터추가및조회
Chapter7.중복없이데이터관리하기:세트(Set)
[개념미리보기]"중복은허용하지않아!"-특별한주머니
[문제7-1]중복된숫자제거하기
[문제7-2]두그룹의공통친구찾기
[배우는파이썬]세트의특징,합집합,교집합,차집합연산
Chapter8.문자열,자유자재로다루기
[개념미리보기]단순한글자가아닌,조작가능한데이터
[문제8-1]신규아이디추천(규칙기반문자열처리)
[문제8-2]숫자문자열과영단어(문자열탐색및변환)
[배우는파이썬]문자열슬라이싱,주요메서드(split,join,replace),f-string
Part3.코드를재사용하고효율높이기:함수와알고리즘효율
복잡한문제를작은단위로나누고,더효율적인코드를작성하는방법을배웁니다.
Chapter9.나만의도구만들기:함수(Function)
[개념학습]반복되는코드를'나만의블록'으로만들기
[문제9-1]소수(PrimeNumber)판별함수만들기
[문제9-2]여러번의최대공약수계산하기
[배우는파이썬]함수의정의와호출,매개변수와return,변수의범위(Scope)
Chapter10.문제를작게쪼개어풀기:재귀(Recursion)
[개념학습]재귀호출의원리와종료조건의중요성
[문제10-1]팩토리얼(Factorial)계산하기
[문제10-2]피보나치수열(재귀적풀이)
[배우는파이썬]재귀함수의구조,스택프레임,DFS/DP의초석다지기
Chapter11.코딩테스트의핵심,시간복잡도
[개념학습]왜빠른코드가중요한가?시간복잡도와빅오(Big-O)표기법
[문제11-1]O(N²)vsO(N)코드비교해보기(1부터N까지의합)
[배우는파이썬]O(1),O(logN),O(N),O(NlogN),O(N²)비교분석
Chapter12.코드를파이썬답게:유용한내장함수와문법
[문제12-1]2차원배열90도회전하기
[문제12-2]문자열압축하기
[배우는파이썬]리스트컴프리헨션,lambda,map,sort(key=...),zip
Part4.실전!코딩테스트핵심알고리즘유형정복
코딩테스트에반드시나오는핵심알고리즘유형을대표문제와함께집중적으로훈련합니다.
Chapter13.모든경우의수탐색하기:완전탐색(Brute-Force)
[개념학습]완전탐색이란?'모든가능성'을빠짐없이찾는방법
[대표문제]블랙잭,숫자야구
[파이썬도구]itertools라이브러리(순열,조합)
Chapter14.최적의선택찾기:그리디(Greedy)
[개념학습]그리디알고리즘의원리와정당성(언제사용할수있는가?)
[대표문제]거스름돈,회의실배정
Chapter15.원하는데이터를빠르게찾기:이진탐색(BinarySearch)
[개념학습]이진탐색의동작원리와전제조건(데이터정렬)
[대표문제]정렬된배열에서특정수의개수구하기,랜선자르기
Chapter16.연결된모든것탐색하기:DFS&BFS
[개념학습]그래프란?깊이우선탐색(DFS)과너비우선탐색(BFS)의차이
[대표문제]미로탈출,바이러스퍼뜨리기,단지번호붙이기
[파이썬도구]재귀함수와스택(DFS),collecti