티스토리 뷰

책을 덮고 나니, 전공으로 알고리즘을 배우던 시절에 이 책이 있었다면 얼마나 좋았을까 하는 생각부터 들었다. 그만큼 알고리즘이란 개념을 쉽게 알려 주는 입문서다. 컴퓨터공학을 전공하게 된 대학생이라면 알고리즘 강좌를 꼭 들어야 할 텐데, 학기 전 방학이면 넉넉히 읽겠고, 수강신청한 다음에 읽기 시작했다 해도 중간고사 전까지 실습까지 하며 완독할 만하다.


Hello Coding 그림으로 개념을 이해하는 알고리즘


입문서의 입문서라고 해도 좋겠다. 다만 이 책이 다루는 범위가 작다기보다는 전공서적으로 쓰이는 책들의 수준이 학부생을 잡던 수준이다. 교수님들도 대개 스스로 잘 아는 사람들이지 멘붕에 빠진 학생들을 잘 가르치는 사람들이 아닌 때가 많기에 이 책은 소중하다.


전공교재의 연습문제와는 확연히 다르게 이 책의 연습문제는 해설이 친절하다. 가족여행을 하며 짬짬이 읽으면서도 코딩을 해야 하는 문제 외에는 책 내용을 되새기면서 풀 수 있는 수준이다. 아예 연습문제 해답에도 책갈피를 두고 빠짐 없이 재미있게 풀었다.


Python 실습


Python으로 코딩해야 하는 연습문제가 있지만 파이썬을 모른다고 해도 큰 지장은 없다. 대개의 로직은 pseudocode 정도로서 복잡하지 않게 보이려고 저자가 고심한 흔적이 보인다. 앞서도 입문서의 입문서라고 얘기했듯이 보통 전공서적에 나온 예제 소스는 개인적으로 참 이해하기가 힘들었는데, 이 책의 예제 소스는 보기가 편하다. 길게 쓰지도 않았는데 각 알고리즘을 구현해 낸다. 정렬 같은 거야 그렇다 치지만 다익스트라 알고리즘 같은 것도 소스가 길지 않은 게 신기했다. Python의 특징인지 저자의 내공인지는 잘 모르겠다.


이 책은 코딩에 대한 감이 떨어진 IT 종사자들에게도 좋다고 본다. 빅데이터나 인공지능 같이 유행하는 IT 주제에 대해 고객이 물었을 때, 개념 설명은 친절하게 해주다가 더 자세히 알려면 이런 저런 알고리즘에 대한 기반지식을 알아야 한다고 으쓱해 하며 얘기할 수 있달까?


입문자에게도 마찬가지다. 알고리즘 강좌를 들을 때, 대체 어디에 쓰이는 건지에 대해서는 잘 이해하지 못했는데, 이건 게임에 쓰이고 저건 빅데이터 기술이고 상품 추천에는 저런 게 쓰인다는 배경설명을 보고 나면 머리 골치 아플 알고리즘을 배우는 데에 보람이 생길 것이다.


이 책의 마지막 장은 IT 업계에서 길게는 수십 년 이상 사용한 알고리즘부터 빅데이터 플랫폼에 주로 쓰이는 Hadoop에 쓰이는 알고리즘, 대형 웹 사이트에서 성능 향상을 위해 쓰는 알고리즘 등을 거쳐 산업현장의 최적화에 쓰는 알고리즘까지 흥미로운 도전과제를 던지며 끝난다. 심심할 일은 없는 세계에 온 걸 환영한다는 의미로도 보였다.


책에 대한 상세정보는 한빛미디어 홈페이지 http://www.hanbit.co.kr/store/books/look.php?p_code=B5896248244에서 확인하길 바란다.

저작자 표시 동일 조건 변경 허락
신고
댓글
댓글쓰기 폼