티스토리 뷰


다음daum.net 사전에 의하면 알고리즘이란 어떤 문제를 해결하기 위해 정해진 일련의절차나 방법을 말한다. 예를 들어보자면, 내가 유럽여행을 가고 싶다고 할 때, 거기에 따르는 비용, 교통편, 숙박 장소, 여행 일정, 여권 발급, 비자 등 일련의 문제를 모두 해결해야 한다. 머리 아프다. 가장 간단한 방법은? 여행사에 맡기는 방법이다. 나는 여행사 직원이 시키는데로 하기만 하면 된다. 복잡한 일은 여행사에서 다 알아서 해준다. 여행사는 해외여행에 대한 전문 지식과 노하우가 있다. 게으른 나는 그런 것들을 알 필요가 없다. 마찬가지로 내가 최신 컴퓨터나 스마트폰을 사용할 때, 나는 그것들이 어떻게 작동하는지 알 필요가 없다. 그저 애플리케이션을 다운 받아 실행시키고 간단한 조작법만 익히면 된다. 이 책은 컴퓨터 프로그램의 작동원리를 설명하는책이다. 여행사 직원의 노하우 같은.구체적으로는 검색엔진, 페이지 랭크 기술, 공개 키 암호화 원리, 오류 정정 코드, 패턴 인식과 인공지능, 데이터 압축, 데이터 베이스, 디지털 서명, 계산 가능성과 결정 불가능성 등을 다루고 있다. 일일이 이것들을 설명하기는 벅차다. 다만 이런 기술들이 공학적이기보다는 수학이라는 점이다. 창의적이고 합리적인 사고체계, 가장 기본적인 원리에 대한 사색과탐구의 결과다. 이런 위대한 알고리즘이백날 학원 가서수학공식과 영어단어를 암기하고 있는 우리 나라 학생들한테서는 나오기 어렵다는 점이 암울하다. 구한말 서양 오랑캐들이 우리 나라 해안을 침입하거나 방문했을 때, 망원경이나 시계 등 최신 문물을 선보이면서 다른 미개한 나라들에서처럼 원주민들 눈이 튀어나오는 장면을 예상했으나 우리 나라 양반 조상님들은 아무리 신비한 기계를 보여줘도 도무지 시큰둥하는 통에 서양 오랑캐들이 더 놀랐다고 한다. 어? 이 동방 왕국에도 이미 이런 최신문물이 있단 말인가? 사실은 그게 아니고, 양반님들 체통에 신기한 거시기를 보고 놀라는 것은 군자의 도리가 아니기 때문에 억지로 놀람을 참고 있었던 것이다. 그 양반님네들이라도 현대의 스마트폰을 보신다면 기절초풍이라도 할 지 모른다. 애고 어른이고 앉거나 서있는 잠깐 동안 스마트폰을 들여다보지 않는 사람이 없다. 한 번쯤 이런 깜찍한 기계가 어떻게 작동하는지 궁금해한적 있다면이 책을 읽어보기 바란다. 물론 한 번 읽는 것으로는 아홉 가지 알고리즘을 제대로 이해하기 어렵긴 하지만...
오늘날 우리는 궁금한 것이 있으면 인터넷 검색엔진에 검색어를 입력하고, 필요한 물건이 있으면 인터넷 쇼핑몰에서 구입한다. 일상생활의 모든 활동을 컴퓨터로 하고 있다고 해도 과언이 아니다. 그렇다면 우리가 컴퓨터를 사용할 때, 컴퓨터 안에서는 무슨 일이 일어나고 있을까? 존 맥코믹은 이를 가능케 한 아홉 가지 위대한 알고리즘 이면의 기본적 아이디어를 다양한 비유와 예를 활용해 쉽고 정확하게 설명한다. 독자들은 이 아홉 가지 알고리즘에 관한 설명에서 검색엔진, 데이터 압축, 암호화, 오류 정정, 패턴 인식 등 우리가 매일 이용하는 컴퓨터 기술의 이론적 아이디어를 흥미진진하게 이해할 수 있다.

1장. 시작하며: 컴퓨터를 움직이는 위대한 아이디어들
2장. 검색엔진 인덱싱: 세상에서 가장 큰 건초 더미에서 바늘 찾기
3장. 페이지랭크: 구글을 출범시킨 기술
4장. 공개 키 암호화: 공개 엽서에 비밀을 적어 아무도 모르게 보내는 방법
5장. 오류 정정 코드: 데이터 오류를 스스로 찾아 고치는 마법
6장. 패턴 인식과 인공지능: 사람처럼 학습하고 생각하는 컴퓨터
7장. 데이터 압축: 책 한 권을 종이 한 장에 담기
8장. 데이터베이스: 일관성을 향한 여정
9장. 디지털 서명: 진짜 누가 이 소프트웨어를 작성했을까
10장. 계산 가능성과 결정 불가능성: 컴퓨터로 모든 문제를 해결할 수 있을까?
11장. 마치면서: 미래의 알고리즘과 진화하는 컴퓨터