-
자료구조+알고리즘의 개념부터 실습까지
포기 없이 즐겁게 배우자!
자료구조와 알고리즘은 IT 기업의 면접과 코딩 테스트 통과를 위한 필수 역량입니다. 알고리즘을 배워두면 단순히 취업뿐 아니라 더 좋은 개발자가 되는 데 큰 도움이 됩니다. 하지만 자료구조와 알고리즘은 배우기 어려우며 심지어 재미도 없다 보니 많은 개발자가 중도에 학습을 포기합니다. 『이것이 자료구조+알고리즘이다』는 독자가 마지막 페이지까지 읽도록 하는 것에 목표를 두었습니다.
처음 배우는 사람의 눈높이에 맞춰 리스트부터 백트래킹까지 자주 사용되는 자료구조와 알고리즘 개념을 위트 넘치는 이야기로 쉽게 설명합니다. 보기만 해도 헉 소리가 나는 복잡한 수식은 최소화하고 이해에 꼭 필요한 수식만 담았습니다. 또한 작동 원리를 단번에 이해할 수 있게 도와주는 다양한 그림과 바로 실행하고 확인할 수 있는 108개 소스 코드를 예제로 제공해 알고리즘의 얼개를 완벽히 이해할 수 있도록 구성했습니다.
『이것이 자료구조+알고리즘이다』와 함께 자료구조와 알고리즘의 주요 개념을 포기 없이 끝까지 배워봅시다!
[ Main Quest: 더 나은 개발자 되기 ]
자료구조+알고리즘, 더 나은 개발자가 되기 위한 최고의 Level Up 루트!
자료구조와 알고리즘을 배우면 좋은 개발자가 되는 데 큰 도움이 됩니다. 사실 요즘은 표준 라이브러리에서 여러 알고리즘을 기본으로 제공하고 있으므로 표준 라이브러리만 사용해도 프로그램을 만들기에는 충분합니다. 하지만 아무리 좋은 도구라도 상황에 맞지 않는다면 쓸모가 없습니다. 표준 라이브러리는 개발자에게 있어 도구함과 같습니다. 좋은 개발자라면 상황에 맞는 도구를 잘 꺼내어 쓸 줄도 알아야 합니다.
그렇다면 “상황에 맞는 자료구조와 알고리즘을 어떻게 선택할 수 있을까요?” 자료구조와 알고리즘이 어떤 원리와 구조로 작동하는지 정확하게 이해하고 있어야 합니다. 작동 원리를 알고 있으므로 이것저것 적용해 보면서 허송세월하는, “‘왜 안 되지?’의 시간”을 줄여 더 좋은 프로그램을 만드는 시간에 더 많은 시간을 투자할 수 있습니다. 심지어 문제가 발생했을 때는 상황에 맞게 알고리즘을 개선할 수도 있습니다.
하지만 자료구조와 알고리즘은 배우면 배울수록 더욱 복잡한 수식이 등장하고, 코드마저 점점 길어집니다. 개발자에게는 자료구조와 알고리즘은 레이드 퀘스트와 같습니다. 더 높은 전투력을 가지기 위해 도전하고 또 도전하지만, 클리어는 절대 만만치 않죠. 마찬가지로 더 좋은 개발자가 되기 위해서 자료구조와 알고리즘을 배워야 하지만, 끝까지 배우기는 절대 쉽지 않습니다. 어쩌면 자료구조와 알고리즘은 개발자에게 ‘최종 보스’일지도 모릅니다.
그동안 자료구조와 알고리즘을 끝까지 배우지 못했다면 그건 아직 『이것이 자료구조+알고리즘이다』를 만나지 못했기 때문일 것입니다. 재미는 학습을 계속할 큰 동력이 됩니다. 좋은 동료가 있으면 즐겁게 게임(캠핑, 등산, 운동, 독서 모임 등)을 이어갈 수 있는 것처럼, 좋은 참고서가 옆에 있으면 자료구조와 알고리즘을 끝까지 즐겁게 배울 수 있습니다. 그래서 『이것이 자료구조+알고리즘이다』가 동료로 삼을 만큼 좋은 책이냐고요? 지금부터 『이것이 자료구조+알고리즘이다』의 특징과 다루는 내용을 소개하겠습니다.
● 『이것이 자료구조+알고리즘이다』의 특징
》 자료구조+알고리즘 개념에 위트 넘치는 이야기를 담았다!
》 복잡한 수식은 최소화하고 이해에 꼭 필요한 수식만 담았다!
》 작동 원리를 쉽게 이해할 수 있게 도와주는 다양한 그림을 담았다!
》 배운 내용을 곧바로 점검할 수 있는, 퀘스트처럼 재미있는 다양한 연습문제를 담았다!
》 배운 알고리즘을 바로바로 테스트할 수 있는 108개의 예제 소스를 제공한다!
》 자료구조와 알고리즘 공략을 위한 저자 Q&A 카페를 운영한다!
● 『이것이 자료구조+알고리즘이다』에서 다루는 내용
》 알고리즘의 기반이자 그 자체로도 아주 유용한 4가지 자료구조
→ 리스트, 스택, 큐, 트리
》 프로그래밍 실력 향상에 도움되는 6가지 알고리즘
→ 정렬, 탐색, 우선순위 큐와 힙, 해시 테이블, 그래프
》 더 좋은 프로그램을 만드는데 도움이 되는 알고리즘 성능 분석법과 4가지 설계 기법
→ 알고리즘 성능 분석, 분할 정복, 동적 계획법, 탐욕 알고리즘, 백트래킹
● 『이것이 자료구조+알고리즘이다』를 읽어야 하는 당신
》 C 언어는 완벽! 그렇지만 취업에 알고리즘이 필요하다던데?
→ 취업 등을 위해 자료구조와 알고리즘의 기본 개념을 제대로 이해하고 싶은 취업준비생!
》 컴퓨터공학 전공 학점은 완벽! 그렇지만 더 좋은 개발자가 되고 싶은데?
→ 컴퓨터공학 전공자로 자료구조와 알고리즘만큼은 제대로 배우고 싶은 학생!
》 실무 능력은 거의 완벽! 그렇지만 헷갈릴 수 있는 내용을 그때그때 확인하고 싶은데?
→ 개발하면 두고두고 살펴볼 자료구조와 알고리즘 참고서가 필요한 개발자!
● 예제 파일 다운로드
→ https://www.hanbit.co.kr/src/11003
● 관련 도서
『혼자 공부하는 C 언어』(한빛미디어, 2019)
『이것이 취업을 위한 코딩 테스트다』(한빛미디어, 2020)