책 이미지
책 정보
· 분류 : 국내도서 > 컴퓨터/모바일 > 컴퓨터 공학 > 자료구조/알고리즘
· ISBN : 9791188621125
· 쪽수 : 216쪽
책 소개
목차
CHAPTER 0 알고리즘의 기본 001
0-1 알고리즘이란? 002
0-2 계산 시간을 측정하는 방법 007
CHAPTER 1 데이터 구조 009
1-1 데이터 구조란? 010
1-2 리스트 014
1-3 배열 018
1-4 스택 022
1-5 큐 024
1-6 해시 테이블 026
1-7 힙 034
1-8 이진 탐색 트리 038
CHAPTER 2 정렬 045
2-1 정렬이란? 046
2-2 버블 정렬 048
2-3 선택 정렬 052
2-4 삽입 정렬 054
2-5 힙 정렬 058
2-6 병합 정렬 062
2-7 퀵 정렬 066
CHAPTER 3 배열의 탐색 073
3-1 선형 탐색 074
3-2 이진 탐색 076
CHAPTER 4 그래프 탐색 079
4-1 그래프란? 080
4-2 너비 우선 탐색 084
4-3 깊이 우선 탐색 088
4-4 벨먼-포드 알고리즘 092
4-5 다익스트라 알고리즘 098
4-6 A* 106
CHAPTER 5 보안 알고리즘 111
5-1 보안과 알고리즘 112
5-2 암호의 기본 116
5-3 해시 함수 120
5-4 공통키 암호 방식 124
5-5 공개키 암호 방식 128
5-6 하이브리드 암호 방식 136
5-7 디피-헬만 키 교환법 140
5-8 메시지 인증 코드 148
5-9 전자 서명 156
5-10 전자 인증서 162
CHAPTER 6 클러스터링 169
6-1 클러스터링이란? 170
6-2 k-means 알고리즘 172
CHAPTER 7 기타 알고리즘 177
7-1 유클리드 178
7-2 소수 판별법 182
7-3 페이지랭크 186
7-4 하노이의 탑 194
리뷰
책속에서
이 책은 ‘Algorithms’ 앱을 기반으로 하고 있습니다. 앱은 애니메이션을 사용해서 알고리즘의 동작을 설명하고 있지만, 이 책은 그림을 잘 활용해서 앱이 가진 장점을 최대한 담으려고 했습니다. 또한, 이 책을 출판하면서 앱에는 없던 ‘알고리즘이란 무엇인가’, ‘알고리즘의 계산 시간’, ‘그래프 기초’ 등의 내용을 추가로 집필했습니다. 이를 통해 더 깊이 있는 학습이 가능하리라 봅니다.
스택처럼 나중에 넣은 것을 먼저 꺼내는 후입선출 구조를 ‘Last In First Out’이라고 하며, 앞글자만 따서 ‘LIFO’라고도 합니다. 리스트나 배열과 마찬가지로 스택도 데이터를 1열로 나열한 것이지만, 데이터 추가나 삭제가 단방향으로만 가능하다는 제약이 있습니다. 또한, 데이터 접근도 스택의 가장 위에 있는 데이터만 가능합니다. 중간에 있는 데이터가 필요하다면 해당 데이터가 제일 위에 올 때까지 데이터를 팝(pop)해야 합니다.
이진 탐색 트리는 3-2절에서 나오는 이진 탐색의 개념을 트리 구조로 표현한 것이라 볼 수 있습니다. 데이터를 탐색할 때나 추가할 때의 최적의 위치를 찾을 때, 앞서 본 두 가지 성질을 기준으로 현재 위치의 데이터와 대소를 비교하기만 하면 왼쪽으로 진행하면 좋을지 오른쪽 진행하면 좋을지를 알 수 있습니다.