논리적 사고를 기르는 알고리즘 수업 : 알고리즘보다 먼저 공부하는 알고리즘 사고 방식

논리적 사고를 기르는 알고리즘 수업 : 알고리즘보다 먼저 공부하는 알고리즘 사고 방식

$32.00
Description
코딩 테스트보다 먼저 준비해야 할 알고리즘 문제 해결 기본기
알고리즘 문제 해결 능력은 프로그래머가 갖춰야 할 필수 역량이다. 이를 기르기 위해서는 잘 알려진 알고리즘과 자주 출제되는 문제 풀이를 익히는 것도 좋지만, 좀 더 근본적으로는 문제가 주어졌을 때 공식화하고 알고리즘으로 표현하는 논리적 사고 방식을 기르는 것이 중요하다.
이 책의 목표는 좋은 문제 해결 기술을 심어 주는 것이다. 전반부는 알고리즘 문제 해결의 원칙을 체계적으로 소개하는 여러 가지 예제로 구성되어 있다. 문제 중심으로 접근하여 자연스럽게 독자들의 도전 성향을 자극한다. 불변량, 귀납법, 대칭성 등 알고리즘 설계의 핵심 원칙은 앞으로 맞닥뜨릴 어떤 문제에든 접근할 수 있는 무기가 된다. 후반부에서는 원칙을 뒷받침하는 수학 지식을 다뤄 예제 이해에 필요한 이론을 제공한다. 알고리즘 문제를 좀 더 효과적으로 푸는 데 딱 필요한 만큼의 수학적 배경지식을 정리할 수 있다.
이 책에서 다루는 문제는 익히 잘 알려진 ‘재미 삼아 푸는 수학 문제’이다. 문제의 답을 찾는 것은 쉽지만 특정한 종류의 문제를 모두 해결할 수 있는 알고리즘을 표현하는 일은 연습이 필요하다. 각종 문제의 알고리즘을 설계하는 연습을 통해 문제 해결에 필요한 논리적 사고와 알고리즘적 접근법을 자연스럽게 익힐 수 있다.

저자

롤랜드백하우스

저자:롤랜드백하우스(RolandC.Backhouse)

노팅엄대학교의컴퓨터과학교수.저서로는《ProgramConstruction:CalculatingImplementationsfromSpecifications(프로그램설계:명세에서구현계산하기)》가있다.



역자:김준원

서울대학교자유전공학부에서컴퓨터공학을전공하고있다.2019년ACM-ICPC대회에서은상을받았다.국제정보올림피아드계절학교코치,삼성전자사내교육등알고리즘교육활동을해왔으며,KOI,NYPC등대회의출제,검수과정에도지속적으로참여하고있다.



역자:윤교준

서울대학교에서컴퓨터공학및수리과학을전공하는학부생으로,음악과그림에열정을가지고있다.국제정보올림피아드코치로활동했고,세계대학생프로그래밍경진대회에서금메달을수상했으며,코딩및알고리즘교육에깊은관심을갖고있다.현재는코드트리에서ContentsInnovator로근무하며,모든사람이코딩을즐길수있는세상을만들고자한다.

목차


1부알고리즘문제해결
1장들어가며
2장불변량
3장강건너기
4장게임
5장기사와건달
6장귀납법
7장가짜동전찾기
8장하노이의탑
9장알고리즘설계의원칙
10장다리건너기문제
11장기사의순회

2부수학적기법
12장수학의언어
13장불리언대수
14장한정기호
15장정수론의요소들
16장관계,그래프,경로대수

출판사 서평

프로그래밍잘하는법:컴퓨터에게일을잘시킨다
컴퓨터에게일을잘시키기위해필요한것은?

프로그래밍을잘하려면어떤능력이필요할까?수학을잘하면프로그래밍도잘할까?둘사이에상관관계가없진않으나,막연히수학을잘한다고해서프로그래밍을잘한다고할수는없다.프로그래밍은인간보다계산을더잘수행하는컴퓨터에일련의명령을내리는작업인데,이는수학적지식이많거나문제를잘푸는것과조금다르기때문이다.인간은알고리즘을실행하는데꽤능하지만자주실수하는반면,컴퓨터는알고리즘이엄밀하게잘정의되어있다면인간보다더잘실행한다.하지만컴퓨터는알고리즘을스스로표현해낼능력이없기때문에창의적인인간의알고리즘표현능력에의존할수밖에없다.여기서프로그래머가발휘할수있는능력은‘알고리즘을잘표현하는능력’이다.

문제는많이풀어봤지만,조금만달라져도막막하다면?
코드없이배우는알고리즘설계의기본원리

이책은다른알고리즘책과조금다르다.잘알려진알고리즘이나문제풀이방법론을구체적으로알려주지않는다.프로그래밍언어로작성된코드가단한줄도등장하지않는다.오로지불변량,귀납법,대칭성의활용등문제를해결하기위한알고리즘을표현하고공식화하는사고방식을강조할뿐이다.문제는많이풀어봤지만조금다른문제를보면어떻게접근해야할지막막할때가있다.특정유형의풀이는알고있지만,알고리즘문제해결을관통하는원칙을알지못하는것이다.이책을통해어떻게문제를분석하고,수학적으로모델링하는지,어떻게알고리즘적해답을도출해내는지,차근차근따라가다보면어느샌가알고리즘이론에체계적으로입문할수있으며,어떤문제를맞닥뜨리더라도방법을찾을수있을것이다.