psdmer***
2019-11-17

이 책은 파이썬을 십분 활용해 필수적인 자료구조와 알고리즘을 두루 살펴본다. 스택, 큐, 연결 리스트 등 추상 데이터 타입과 정렬, 검색, 동적 계획법, 그래프, 트리 등 개발자가 꼭 알아야 할 알고리즘 핵심을 짚는다. 모든 알고리즘은 파이써닉한 코드로 전체를 구현했고 일부 장은 연습문제도 제공한다.
학과의 전유물에서 취업의 필수 코스로…. 파이썬 자료구조와 알고리즘
때 마침 수능이 있었다. 매서운 찬 바람이 불면 늘 생각하는 그 날이다. 본인이 컴퓨터 학과에 진학하던 2000 년도는 컴퓨터 학과는 컴퓨터라는학문을 배우는 어쩌면 조금은 별난 사람들만 가는 흔치 않았던 학과 였던 것 같다. 프로그래머라는 직업자체가 낯설었던 때이기도 하고, 학과 커리큘럼이 그다지 비인기를 떠나,비 인간적이던 ;;; 쇠 덩어리 느낌의 이 차가운 기계와 대화를 시도하던 이상한 사람들이모인 학과… 하물며 미팅 주선도 들어오지 않았던 흔한 무언가 어두운 학과 였단 말이다.
그런데 천지가 개벽을 했다. 이젠 누구나 컴퓨터와 친하게 지내고 컴퓨터프로그래밍을 하고 이젠 꼭 컴퓨터를 전공하지 않아도 컴퓨터와 더 친해지기 위한 노력으로 데이터를 다루고 프로그래밍을 하기 위해 자료구조와 알고리즘을공부하는 시대가 되 버린 것이다.
프로그래밍 언어가 점점 친숙해지더니 이젠 다양한 분야에서 맹활약 중인 파이썬 언어가 대세가 된 것 같다. 하물며 초등학생도 노트북으로 파이썬 코딩을 한다고 하니, 20 년씩 두 번의 인생을 살아오고도, ( 다음 달이 마흔이라니;;; ) 아직익숙하지 않은 파이썬 코딩 학습에 더 분발해서 해야 할 지경이다. 배울수록 배워야 할 것이 많아지는이 분야를 왜 택했는지 20 년 전의 나로 돌아가서 말리고 싶어질 지경이다.
컴퓨터 공학과 알고리즘을 일반인이 접하기는 정말 낯설고 어려운 항목인 것은 맞으나, 이 책은 우선 사용자들에게 친숙한 파이썬 언어를 기반으로 하고 있어서 적어도 첫 장에 책을 덮는 일은 없겠다. 또한 스택과 큐, 리스트 등의 용어를 알고 학습한 개발자들도 파이썬에서구현하는 방법을 학습하기에 이 책이 많이 도움이 될 듯 하다.
최근에는 대부분의 회사가 컴퓨터 프로그래밍 랭귀지에 종속되지 않고 본인이 원하는 언어를 통해서 회사에서 제시하는문제를 풀도록 유도하고 있다. 십 수년 간의 경험을 통해 이제 더 이상 언어에 종속되는 것이 크게 문제되지않음을 알고 있는 것 같다. 최근은 아울러 코딩을 온라인에서 브라우저를 켜는 것만으로도 가능하게 하는수 많은 웹사이트들이 존재하므로 꼭 전문가의 영역이라고 여기고 부담을 느낄 필요도 없다.
우선 이 책의 장점은 프로그램 언어에 능숙한 상대를 통해서 자료구조와 알고리즘을 레퍼런스처럼 단순히 적어 놓은것이 아니라, 기본적으로 알아야 할 기본 문법 구조를 적절히 알려주고 바로 구조와 알고리즘을 제시함으로써책의 섹션 분류가 크게 무리 없이 학습할 수 있는 수준으로 나뉘어져 있다.
최근 IT 회사들이 비 전공 프로그래머들에게도 자료구조와 알고리즘을테스트하는 다양한 코딩 테스트를 진행하는 것으로 알고 있다. 그런 후배들에게 추천하고 싶은 책이다. 가볍지만 절대 단순히 넘어가면 안되는 내용이 꽉 차 있으니, 한달 정도 충분히 숙련해보면 좋은 결과가 있지 않을까 생각한다.
그나저나 한빛미디어에서 고맙게도 “전문가를 위한 C++” 책을 보내줬는데, 무려 1500페이지에 달하는 무겁고 큰 책을 몇 일 만에 읽으라고 해서 중학교 2학년 처럼 ㅎㅎ 그렇게는못하겠다고 진득하게 C++ 학습을 계속 하고 있다. 언젠가는그 책에 대한 소감도 적어서 꼭 올리겠다.
아! 파이썬 자료구조와 알고리즘 이 책은 360 페이지 밖에 되지 않는다. 하루에 한 섹션만 읽어도 몇 일이면되니 중도에 포기하는 분은 없었으면 하는 바램이다. ^^