반응형


요즘 기업에서 코딩 테스트를 중요시 하다 보니 알고리즘 관련 책들이 많이 나오고 있다. 나도 1년전에 회사에서 진행하는 코딩 자격시험 준비때문에 여러가지 알고리즘 책들을 많이 봤었다. 물론 패스하고 난 후에는 좀 안보긴 했지만. 

그런데 알고리즘 공부를 하다 보면 부딪치는게 있다. 바로 수학이다. 특히 확률, 경우의 수와 같은 내용들은 시험에도 응용해서 자주 나오는 편이었다. 분명 중,고등학교때에 배운 내용인데도 지금은 하나도 생각이 안난다. 그래서 수학 공부를 해불까라는 생각도 자주 했다. 그런데 범위가 넓다보니 뭐부터 시작을 해야할지 좀 막막했었다. 그렇다고 수학의 정석을 처음부터 공부할수도 없는 노릇이다. 


1. 나는 알고리즘 공부를 하고 싶다. 

2. 나는 수학도 공부를 하고 싶다. 단 수학에 대한 인물들에 대해서도 좀 알고 싶다. 


이게 바로 내가 바라는 것이었다. 알고리즘 책을 보면 알고리즘 내용만 나오고 , 수학책을 펴면 수학만 나오고. 아직 그걸 연결 시킬정도의 실력은 안되니 어떻게 해야 할지 난감 했는데 이번에 받은 책이 딱 거기에 부합하는것 같다. 



일단 알고리즘 책이니 알고리즘에 대한 내용이 나오는것은 당연하다. 그런데 이렇게 알고리즘을 수학적으로 설명을 해준다. 수학적이라고 해서 그렇게 난이도가 높지는 않다. 그냥 차분히 읽었을때 분명 이해를 할 수 있을 정도이다. 용어에 대한 정의가 생각이 안나서 찾아 볼 수는 있지만 그래도 책 안에서 모든 내용을 이해할 수 있다. 읽다보면 예전에 중,고등학교때에 배웠던 내용들도 생각이 나면서 재미있다.



그리고 주목할 만한 내용으로는 수학이나 알고리즘에 대한 설명만 있는게 아니라 그것을 만든사람, 또는 관련있는 사람에 대해서 짧게나마 설명을 해준다. 내가 위에서 언급했던 2가지 조건을 딱 충족하는 부분이다. 전에 수학에 대해서 책을 좀 볼까 라고 마음 먹고 책을 좀 찾아봤었는데 보통 인물 도감 같은 느낌의 책들이 많았었다. 그런데 이 책은 이렇게 중간중간 내용을 넣어줘서 책을 좀더 재미있게 읽을 있었다.


알고리즘과 수학에 지식을 동시에 충족 시키고 싶은 분들에게 이 책을 추천해주고 싶다. 





728x90
반응형
반응형


알고리즘에 대한 관심이 많아지면서 서점에는 관련 서적들이 쏟아져 나왔다. 나도 전공이 컴퓨터 공학인지라 관심있게 보는 분야 중 하나이다. 그런데 볼 때마다 느낀점은 좀더 쉽게 설명해줄 수는 없을까라는 아쉬움이었다. 물론 책을 쓴 저자는 쉽게 쓰려고 노력을 했겠지만 내가 이해할 수 가 없어서 좀더 쉬운책을 찾아보게 되었다. 한빛미디어 "나는 리뷰어다" 로 선정되어서 이 책을 받게 되었는데 책 표지부터 상당히 맘에 들었다. 알고리즘 관련 책인데 고리타분한 딱딱한 디자인이 아니어서 쉽지 않은 내용을 쉽게 설명을 했을것 같은 느낌이 들었다. 


책 내용을 살펴보면 우선 그림이 많다. 설명도 설명이지만 그림을 활용해서 쉽게 이해할 수 있도록 내용을 구성해 놨다. 그림 느낌이 약간Head first 시리즈에서 봤던 그림체라는 생각이 잠깐 들었다. 책 내용에 색깔도 있어서 책을 읽는데 지루하지가 않았다. 프로그래밍 책 하면 코드와 글자로 구성이 되어있으면서 온통 검정색 글씨로 도배가 되어있는데 이 책은 그렇지 않았다. 책을 읽는데 부담도 없고 그림책 읽는 듯한 느낌이 들었다. 


 

그리고 컴퓨터 서적에 각 챕터마다 빠지지 않는 요약과 연습문제가 있다. 각 챕터에서 설명했던 내용들을 간단하고 쉽게 정리를 해두었다. 그리고 내용을 반복할수 있도록 연습문제도 포함되어있다. 연습문제라고 해서 그렇게 어렵지는 않고 공부했던 내용을 잘 생각해보면 충분히 풀수 있는 수준이다. 문제의 정답은 책 마지막 부분에 있다. 

마지막 챕터에서는 이 책에서 자세히 설명하지 않은 다른 알고리즘들에 대해서 간단히 소개를 해주고 있다. 그래서 추가적으로 공부해야 할 것이 무엇인지, 아니면 내가 관심있어 하는 알고리즘이 어떤 알고리즘인지에 대한 방향성을 부여해줄 수 있다. 

https://github.com/egonSchiele/grokking_algorithms

책에서 설명된 github 에 가면 알고리즘의 소스코드를 확인해 볼 수 있다. 스스로 직접 코딩을 해보는 것이 가장 좋은 방법이지만 참고할 자료가 있다는것도 충분히 도움이 된다. 책으로 읽었던 내용을 코드를 봄으로써 좀더 이해가 빨라질 수 있기 때문이다. 처음에는 python으로 코드가 되어있다고 했었는데 직접 들어가 보면 python, ruby, java, javascript 등 다양한 언어로 코드가 작성되어있다. 내가 직접 코드를 작성해보고 비교해보는것도 좋은 학습 방법이 될수 있을것 같다.

알고리즘에 대한 설명을 마치 동화책처럼 내용을 만들어서 쉽게 이해하고 접근할수 있도록 해주는 책이다. 처음 알고리즘을 공부하는 사람이 기초를 잡기 위해서 한번쯤 읽어본다면 많은 도움이 될것 같다. 

"Hello Coding 그림으로 개념을 이해하는 알고리즘" 의 자세한 내용은 한빛미디어 홈페이지에서 확인할 수 있다.


Hello Coding 그림으로 개념을 이해하는 알고리즘
국내도서
저자 : 아디트야 바르가바(Aditya Y. Bhargava) / 김도형역
출판 : 한빛미디어 2017.04.01
상세보기


728x90
반응형

+ Recent posts