자바스크립트는 이제 웹 개발의 중심에 서 있는 필수 언어이다. 하지만 많은 개발자들이 '알고리즘'이라는 단어만 들어도 두려움을 느끼곤 한다. 이 책은 초보 개발자들이 쉽게 이해할 수 있도록 알고리즘의 기초부터 실용적인 예제까지 다룬다. 특정 코드가 최고의 성능을 내지 않더라도 다양한 해결책을 통해 더 나은 코드를 작성하는 방법을 안내한다. 학문적인 내용은 최소화하고, 실무에서 유용한 알고리즘을 재미있게 배울 수 있도록 구성되었다.
저자 소개
저자 : 한상훈
한양대학교 신소재공학을 전공한 후 모바일 게임 및 웹 애플리케이션 개발사 '루아흐'를 창업했습니다. 이후 사업을 정리하고 군복무를 하며, 군복무 중 만든 프리웨어를 기반으로 제대 후 '에어데스크'라는 회사를 설립하고 5년간 운영했습니다. 창업 5년차부터 스타트업 팀들과 함께 일하며 경력을 이어갔고, 현재 IT 개발사 플렉스웹의 대표, 인도네시아 암호화폐 거래소 메디크립토 인터네셔널의 한국 지사장, PT. 플렉스웹 테크놀로지의 커미셔너, 컨설팅 회사 아티스트의 CBO(Chief Blockchain Officer), BLCNT의 CTO 등 여러 회사에서 대표 및 임원으로 일하고 있습니다. 또한 패스트캠퍼스(데이원컴퍼니)에서 풀스택 온라인 개발 코스 강의를 진행하였고, 카카오 테크 캠퍼스 강의, TED 강연, 대학교 강의, 대기업 개발자 강의 및 특강 등의 활동을 이어가고 있습니다. 이번 책은 두 번째 출간하는 책으로 이전 집필한 책은 『UX 디자인의 모든 것』이 있습니다. 최근엔 탈중앙 암호화폐 거래소, CBDC, 디파이 및 온라인 소셜 애플리케이션 서비스 너러블(nullable) 등 서비스 개발에 전념하고 있습니다.
목 차
1장 알고리즘
1. 알고리즘과 자바스크립트
2. 자바스크립트의 프로토타입 메서드
3. 빅오 표현법과 시간 복잡도
4. 공간 복잡도
5. 코드를 빅오 표현법으로 표현하기
2장 정렬 알고리즘
1. 정렬 알고리즘이란
2. 버블 정렬(Bubble sort)
3. 선택 정렬(Selection sort)
4. 삽입 정렬(Insert sort)
5. 합병 정렬(Merge sort)
6. 퀵 정렬(Quick sort)
7. 힙 정렬(Heap sort)
8. 기수 정렬(Radix sort)
9. 자바스크립트 내장 함수
3장 검색 알고리즘
1. 선형 탐색(Linear search)
2. 이진 탐색(Binary search)
3. 깊이 우선 탐색(DFS, Depth-First Search)
4. 너비 우선 탐색(Breadth-First Search, BFS)
5. 최소 신장 트리(Minimum Spanning Tree, MST)
4장 동적 알고리즘
1. 동적 프로그래밍이란?
2. 동적 프로그래밍을 사용해야 할 때
5장 탐욕 알고리즘
1. 탐욕 알고리즘이란?
6장 그 밖에 문제들
1. N-Queen 문제
2. NP 문제와 브루트 포스 알고리즘
7장 자바스크립트에서 메모리
1. 메모리 생존 주기
2. 가비지 콜렉션
3. 표시하고 쓸기(Mark-and-sweep) 알고리즘
4. 그 밖에 메모리 누수 시나리오
출판사 서평
초급 웹 개발자를 위한 가장 쉬운 알고리즘 교재
자바스크립트는 이제 웹 개발의 중심에 서 있는 필수 언어입니다. 하지만 많은 개발자들이 '알고리즘'이라는 단어만 들어도 두려움을 느끼곤 합니다. 이 책은 초보 개발자들이 쉽게 이해할 수 있도록 알고리즘의 기초부터 실용적인 예제까지 다룹니다. 특정 코드가 최고의 성능을 내지 않더라도 다양한 해결책을 통해 더 나은 코드를 작성하는 방법을 안내합니다. 학문적인 내용은 최소화하고, 실무에서 유용한 알고리즘을 재미있게 배울 수 있도록 구성되었습니다.
【 대상 독자층 】
- 알고리즘 공부가 필요한 자바스크립트 개발자
- 자바스크립트 개발자 취업 준비생
이 책은 개발자라면 한번쯤은 들어보고 취업을 위해 공부하는 알고리즘에 대한 내용을 쉽게 알려주고 있습니다. 가장 기본적으로 사용되는 알고리즘부터 실제 프로그래밍을 만들 때 사용하는 알고리즘 내용으로 독자들이 어떤 문제를 직면하게 됐을 때 당황하지 않고 해결할 수 있도록 도와줍니다.
독자들은 이 책을 통해 알고리즘의 기초 개념을 탄탄히 다질 수 있을 뿐만 아니라, 자바스크립트를 이용한 실제 문제 해결 방법을 익힐 수 있습니다. 또한, 다양한 코드 예제와 함께 다양한 해결책을 제시하여, 독자들이 자신만의 코드를 작성할 수 있도록 돕습니다.
이 책은 알고리즘에 대한 두려움을 없애고, 자바스크립트를 더욱 효과적으로 활용하고자 하는 모든 개발자들에게 꼭 필요한 책입니다. 초보 개발자, 주니어 개발자, 취업준비생 등 알고리즘 공부에 어려움을 느끼는 모든 분들께 이 책을 강력히 추천합니다.