학부생 당시 중국 특유의 흑백흑백한 교과서와 언어의 어려움으로 인해 전공과목들을 잘 소화해지 못했던 기억이 난다. 그렇게 자리잡은 전공과목 알러지(…)는 아직까지도 트라우마처럼 나에게 남아있다. 나중에 실무를 경험하며 필요성을 깨닫고 ‘언젠가 다시 각잡고 공부해야지!’ 했으나 그런 일은 일어나지 않았다. 그러다 우연히 이번달 서평단 도서 목록에서 알고리즘 서적을 보게 되었고 마음에 숙제처럼 자리잡아 있던 녀석들 중 하나를 해치우기 위해 신청하게 되었다. 게다가 믿고 보는 Oreilly가 아닌가. 그렇게 이번달은 AI와 관련이 없는 알고리즘 서적을 리뷰해보려고 한다.

[똑똑한 코드 작성을 위한 실전 알고리즘] 한빛미디어 서적

알고리즘을 공부하는 학생 입장에서 어렵게 느껴질 수 있는 부분은 이론과 실전의 연결고리라고 생각한다. 이진 배열 탐색, 해시 함수, 스택과 같은 알고리즘을 이론적으로 이해해도 이것을 코드화 시키는 것은 또 다른 문제이다. 반대로 코드를 잘 짜는 학생도 이론을 이해 못한다면 알고리즘을 구현할 수 없다. 실제로 내가 사용했던 알고리즘 교과서는 이론 서적과 실전 서적이 별개였고, 당시 C언어(…)를 갓 입문한 나로써는 이론도 가뜩이나 어려운데 이걸 구현하라고 매주 자동 채점되는 코딩 과제 잔뜩 내시는 교수님이 너무 버거웠던 기억이 난다.

이 책에서 두드러지는 특징이 이 부분을 도와준다는 것이다. 이론을 컴퓨터 언어로 옮기는 과정의 중간다리를 만들어준다. 구체적으로는 이론 -> 이론 시각화 -> 코드 구현 방법까지의 프로세스를 순서대로 소개해준다. 이 책에서 코드 구현은 Python을 사용하였다. 사진으로 책 주요 구성을 살펴보며 포스트를 짧게 마무리하겠다.

힙 알고리즘 이론 내용
힙 알고리즘 예제 그림 설명
힙 알고리즘 Python 구현 방법 설명
알고리즘 복잡도 설명

위 사진들처럼 알고리즘을 예시와 함께 구체적으로 코드화 시키기까지의 내용을 꼼꼼하게 담고 있다.

이 책은 기본적으로 학부에서 다루는 알고리즘 범위를 다룬다. 그러나 기본적인 알고리즘 원리 및 코드 실현 외 심화적인 내용은 포함하지 않는다. 알고리즘 기본 단계에서 이론으로 코드화 시키는데 어려움을 겪는 학생들이 차근차근 공부하면 자신감이 생기는 데 도움될 것 같다.

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

Avatar

Jaein Kim

I'm a Computer Science PhD candidate from South Korea, currently based in Beijing, China. My academic journey is dedicated to pioneering research in Natural Language Processing and Knowledge Graphs, striving to break new ground in these dynamic fields.

Recommended Posts

생물을 사랑하는 AI 박사생 이야기

요즘 듣고 있는 Coursera 뇌과학 강좌에 대해 쓰려다가 에세이가 되버린 생물을 사랑하는 AI 박사생의 이야기입니다. 🙃 지금 NLP를 공부하는 AI 박사과정 학생이지만, 제 관심사는 언제나 다른 곳을 향해 있었습니다. 어릴 때부터 지금까지 살아오면서 언제나 무언가를 키우고 있을 정도로 생물에 대한 관심이 참 […]

Entity Alignment 태스크 및 벤치마크, 데이터셋 알아보기

오늘은 Knowledge Graph (KG) 관련 태스크 중 Entity Alignment (EA)에 대해 보다 자세히 알아보겠습니다. KG 개념에 익숙하지 않으시다면 지난 글을 읽고 오시면 도움이 됩니다. 지난 글에서 간단히 소개했듯, EA는 다른 두 개 (혹은 그 이상의) KG가 가진 엔티티들 중, 실세계에서 같은 객체를 […]

지식 그래프 (Knowledge Graphs) 개념과 관련 태스크, 그리고 NLP와의 관계성

이번 글에서는 지식 그래프의 기본 개념에 대해 알아보고, 관련된 대표적인 태스크로 어떤 것들이 있는지 간단하게 알아보겠습니다. 또 KG와 NLP와의 관련성에 대해서도 간단히 소개하며 마무리하겠습니다. Knowledge Graph (KG) 기본 개념 KG는 real-world의 객체 (entity) 사이의 관계 (relation)를 그래프 형태로 모델링한 것으로, 구조화된 데이터의 […]

AI 박사생의 연구 삽질 여정 (현재 진행형)

이번 글은 한탄과 다짐이 섞인 근황 이야기입니다. 개인 웹사이트에서는 처음 쓰는 사적인 이야기인 것 같습니다. 저는 베이징 소재 공대의 컴퓨터 공학부에서 AI를 공부하고 있는 박사 과정 학생입니다. 저는 언제나 AI를 “연구”한다고 표현하지 않고 “공부”한다고 표현하는데 그건 제가 아직도 한참 삽질의 여정을 보내고 […]