Do it! 첫 알고리즘 - 160가지 그림과 스토리텔링으로 초보자도 쉽게 이해한다! Do it! 시리즈
마츠우라 켄이치로.츠카사 유키 지음, 노은정 옮김 / 이지스퍼블리싱 / 2023년 4월
평점 :
장바구니담기


어릴 적 블랙박스 수학 교과서에 실려서 흥미로웠던

'음수*음수=양수'를 이해 못 한 스탕달의 이야기다.

소설 <적과 흑>으로 유명한 프랑스의 작가 스탕달(Stendhal, 1783-1842)은 자전적 소설에서, “1만 프랑의 빚과 5백 프랑의 빚을 곱하면 어떻게 5백만 프랑의 이익이 된다는 말인가?”라고 썼다. 음수와 음수의 곱이 양수인 것을 이해할 수 없다는 것이다. 당대의 지식인 가운데 한 명인 스탕달이 이 정도였으니, 음수에 음수를 곱해서 양수가 된다는 사실을 선뜻 받아들이지 못하는 사람들이 많았음을 짐작할 수 있다.

스탕달

'음수*음수=양수'를 이해 못 한 스탕달의 이야기다.





갑자기 이 이야기를 한 이유는

'코딩'을 먼저 배우다 보면 음수 제곱이 양수인 것처럼

어느 순간 개념이 마음에 와닿지 않는 경우를 만나게 된다.

코딩 학습

크게 같이 공부했던 동기들을 보면 아래와 같은 선택을 하였다.

1) 그냥 외운다. (특정 항목은 외우다 보면 이해가 되는 날이 오기도 한다. 그리고 목표했던 진도를 따라잡아야 하니까)

2) 포기한다.

3) 알고리즘을 공부해야 한다는 걸 알지만... 부담을 느낀다.

그때 필요한 책이 바로

똑같이 마지막 데이터를 뽑는데 왜 꺼낸 횟수가 다른지 이해가 어려웠던 기억이 난다.

해당 책에서는 그림과 동물 캐릭터를 통해 '큐 = 에스컬레이터' , '스택 = 유리컵'의 비유를 통해 처음 접하는 초보자도 쉽게 이해할 수 있도록 소개한다.

[큐 = 에스컬레이터]




[스택 = 유리컵]







알고리즘 왜 중요한가?

첫 알고리즘

알고리즘은 컴퓨터 과학에서 문제를 해결할 때 컴퓨터가 계산하는 순서이다.

해당 책이 쉽게 설명하는 것을 알겠지만 결국 '왜 공부해야 하는가?'에 대한 답이 나와야 한다.

알고리즘의 본질은

알고리즘을 이해 못 해 빠르게 풀지 못한다면 다른 알고리즘을 찾아야 한다.

다른 알고리즘이 문제를 풀었어도, 최적화된 방법인지 알고리즘을 모르면 알 수 없다.

결국은 효율, 적합도의 문제이다.

알고리즘을 공부하는 이유



마치며

추천하는 이유

알고리즘은 한 학기를 공부해야 할 정도로 방대한 양이기에 이 책 한 권으로 모든 알고리즘을 이해하는 데는 무리가 있다. 하지만, 방대한 양의 내용을 다루고 있으며 코딩을 직접 해보았고, 답답함을 느꼈다면 해당 책을 읽어볼 것을 강력하게 추천한다. 꼭 필요한 내용, 내가 주로 쓰는 코딩에 관한 알고리즘은 담겨있을 것이다.





댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo