알고리즘 퍼즐 (코딩은 괜찮아 생각이 문제지)

알고리즘 퍼즐 (코딩은 괜찮아 생각이 문제지)

$28.00
Description
코딩은 괜찮아!
생각이 문제지!

코딩 능력이 아니라
알고리즘 사고력이 필요하다
문제 해결은 퍼즐을 해결하는 과정과 같다
알고리즘 테스트 != 코딩 능력
알고리즘 테스트는 코딩 능력 테스트가 아니다. 알고리즘 테스트가 코딩 능력이라고 생각하는 것은 흔히 하는 실수이며, 실제로는 알고리즘 사고력이 핵심이다. 코딩을 못하는 게 아니라 알고리즘 사고력을 배우지 못했기 때문이다. 상위 레벨의 접근법으로 문제를 이해하고 풀어내는 과정이 알고리즘 사고력의 핵심이다. 문제에 급급해서는 상위 레벨의 접근법을 배울 수 없다. 문제를 어떤 전략으로 접근할지 결정하는 알고리즘 사고력을 배워야 한다.

알고리즘 사고력을 위해 엄선된 퍼즐
직접 코딩을 하는 책은 아니지만, 알고리즘을 설계하거나 분석하기 위한 일반적인 원리를 보여줄 만한 퍼즐을 골랐다. 이러한 퍼즐을 통해 배울 수 있는 알고리즘 설계 전략은 다음과 같다.

● 완전 검색
● 역추적
● 감소 정복
● 분할 정복
● 변환 정복
● 탐욕 접근법
● 반복 향상
● 동적 프로그래밍
● 분석 기술

마방진, N-퀸 문제, 애너그램 감지, 최단 경로 개수, 네덜란드 국기 문제 등의 퍼즐 문제는 알고리즘 코딩 테스트의 단골 문제이며, 다양한 코딩 테스트 사이트에서 문제로 출제된 것을 확인할 수 있다. 문제를 이해하고 풀 수 있다면 코딩 능력은 문제가 되지 않는다. 이것이 이 책의 핵심 가치다.

퍼즐의 난이도별 접근
퍼즐이 어려운 독자를 위해 150개의 퍼즐을 난이도에 따라 초급, 중급, 고급으로 분류했다. 알고리즘 풀이 기법과 난이도에 따라 다양한 방식으로 문제에 접근할 수 있게 구성되어 있으며 이를 통해 알고리즘 디자인 전략과 분석 기법을 학습할 수 있게 했다.

[관련도서]
알고리즘 산책
누구나 자료 구조와 알고리즘 개정2판
문제 해결력을 높이는 알고리즘과 자료 구조
저자

아나니레비틴

빌라노바대학교의컴퓨터공학과교수이며인기있는알고리즘디자인과분석교과서의저자이다.그의책은중국어,한국어,그리스어,러시아어로번역되었다.수학적최적화이론,소프트웨어엔지니어링,데이터관리,알고리즘디자인,컴퓨터과학교육등에논문을출판했다.

목차

튜토리얼퍼즐
__마방진
__n-퀸문제
__유명인사문제
__숫자맞히기(스무고개)
__트로미노퍼즐
__애너그램감지
__현금봉투
__질투심많은두남편
__구아리니퍼즐
__파이자르기최적화
__공격하지않는킹
__밤중에다리건너기
__레모네이드가판대배치방법
__양수로바꾸기
__최단경로개수
__체스의발명
__정사각형덧붙이기
__하노이의탑
__이빠진체스판도미노로채우기
__쾨니히스베르크의다리문제
__초코바쪼개기
__옥수수밭의닭

메인섹션퍼즐
__001늑대,염소,양배추
__002장갑고르기
__003직사각형분할
__004강건너기
__005행과열맞바꾸기
__006손가락으로숫자세기
__007밤에다리건너기
__008조각그림맞추기
__009암산
__010동전여덟개중에서가짜동전찾아내기
__011가짜동전무더기
__012타일채우기
__013막힌경로
__014체스판다시조립하기
__015트로미노타일채우기
__016팬케이크만들기
__017킹이갈수있는곳
__018끝에서끝까지
__019쪽번호붙이기
__020최대합내려가기
__021정사각형쪼개기
__022팀정렬
__023폴란드국기문제
__024체스판색칠하기
__025살아있기좋은날
__026순위구하기
__02720변게임
__028한붓그리기
__029마방진톺아보기
__030막대자르기
__031카드맞히기마술
__032싱글엘리미네이션토너먼트
__033마방진과유사마방진
__034별위의동전
__035물병세개
__036+-배치
__0372n개의말
__038테트로미노타일배치
__039판밟기
__040네나이트퍼즐
__041원형으로배치된조명
__042또다른늑대-염소-양배추문제
__043수배치
__044가벼운가무거운가
__045나이트최단경로
__046삼색배치
__047전시계획
__048맥너겟수
__049선교사와식인종
__050마지막공
__051빠진수맞히기
__052삼각형개수
__053용수철저울로가짜동전찾아내기
__054직사각형판자르기
__055주행거리퍼즐
__056신병줄세우기
__057피보나치의토끼
__058한번정렬,두번정렬
__059두가지색모자
__060삼각형과정사각형
__061대각선상의체커
__062동전줍기
__063플러스와마이너스
__064팔각형그리기
__065암호맞히기
__066남은수
__067평균
__068각자리숫자더하기
__069칩옮기기
__070점프해쌍만들기I
__071칸표시하기I
__072칸표시하기II
__073닭쫓기
__074위치선택
__075주유소점검
__076효율적인루크
__077패턴을찾아서
__078직선트로미노채우기
__079사물함문
__080왕자의여행
__081유명인사문제II
__082모두앞면만들기
__083제한된하노이의탑
__084팬케이크정렬
__085루머퍼뜨리기I
__086루머퍼뜨리기II
__087뒤집힌잔
__088두꺼비와개구리
__089말바꾸기
__090자리재배치
__091수평도미노와수직도미노
__092사다리꼴타일배치
__093전함맞히기
__094정렬된표검색
__095최대-최소무게
__096계단모양영역채우기
__097탑스웝스게임
__098회문개수세기
__099정렬뒤집기
__100나이트가갈수있는곳
__101방에페인트칠하기
__102원숭이와코코넛
__103반대편으로점프하기
__104말나누기
__105MU퍼즐
__106전구켜기
__107여우와토끼
__108최장경로
__109더블-n도미노
__110카멜레온
__111동전삼각형뒤집기
__112도미노채우기II
__113동전제거하기
__114점가로지르기
__115바셰의무게추
__116부전승횟수
__1171차원솔리테어
__118여섯개의나이트
__119삼색트로미노
__120동전분배기
__121초강력달걀시험
__122의회의평화
__123네덜란드국기문제
__124사슬자르기
__125다섯개를일곱번안에정렬하는방법
__126케이크를공평하게나누는방법
__127나이트의여행
__128보안스위치
__129리브의퍼즐
__130독이든와인
__131테이트의카운터퍼즐
__132솔리테어군대
__133라이프게임
__134점색칠하기
__135서로다른짝
__136스파이잡기
__137점프해쌍만들기II
__138사탕나누기
__139아서왕의원탁
__140n-퀸문제다시보기
__141요세푸스문제
__14212개의동전
__143감염된체스판
__144정사각형죽이기
__145퍼즐
__146움직이는목표물맞히기
__147번호달린모자
__148자유를위한동전한개
__149자갈펼치기
__150불가리아식솔리테어