목차01 기초 데이터 구조
1.0 데이터 구조와 알고리즘 1.1 기초 데이터 구조 1.1.1 수치 데이터 1.1.2 비수치 데이터 1.2 스트링 1.2.1 스트링 데이터 구조 1.2.2 스트링 연산 1.3 레코드 1.3.1 레코드 선언 1.3.2 레코드 필드 참조 1.3.3 레코드 배열 1.3.4 중첩 레코드 연습문제
02 배 열
2.1 1차원 배열 2.2 다차원 배열 2.3 행렬, 배열의 응용 2.3.1 희소행렬 2.3.2 삼각행열 연습문제
03 스 택
3.1 스택 3.1.1 스택이란? 3.1.2 스택의 동작 3.1.3 스택의 배열 구현 3.1.4 스택 오버플로 처리 3.2 스택을 이용한 수식 계산 3.2.1 연산자 우선순위 3.2.2 수식 표기법 3.2.3 후위 표기식 계산 알고리즘 3.2.4 중위 표기식을 후위 표기식으로 변환하는 방법 3.3 미로 찾기 연습문제
04 큐
4.1 큐 4.1.1 큐란? 4.1.2 큐의 동작 4.1.3 큐의 배열 구현 4.2 원형 큐 4.3 데크 4.3.1 데크란? 4.3.2 데크의 동작 4.3.3 데크의 종류 4.3.4 큐의 응용 연습문제
05 리스트 I
5.1 순차 사상 순서 리스트 5.2 단순 연결 리스트 5.3 연결 리스트로 구현한 스택과 큐 5.3.1 연결 스택 5.3.2 연결 큐 연습문제
06 리스트 II
6.1 원형 연결 리스트 6.2 이중 연결 리스트 6.2.1 이중 연결 리스트 6.2.2 이중 원형 연결 리스트 6.2.3 다중 연결 리스트 6.3 연결 리스트의 응용 6.3.1 다항식 덧셈 6.3.2 희소 행렬 연습문제
07 그래프 I
7.1 그래프 기초 7.1.1 개념 및 용어 7.1.2 그래프 표현법 7.2 그래프 순회 7.2.1 깊이 우선 탐색 7.2.2 너비 우선 탐색 7.3 최소 신장 트리 연습문제 163
08 그래프 II
8.1 최단 경로와 도달 가능성 8.1.1 최단 경로 : 딕스트라 알고리즘 8.1.2 도달 가능성:바샬 알고리즘 8.2 위상 정렬 8.3 임계 경로 연습문제
09 트리 I
9.1 트리 9.2 이진 트리 9.2.1 이진 트리 기초 9.2.2 이진 트리의 구현 9.2.3 일반 트리를 이진 트리로 변환 9.2.4 트리의 응용 9.3 이진 트리의 순회와 삽입, 삭제 9.3.1 이진 트리의 순회 9.3.2 이진 트리 삽입, 삭제 연습문제
10 트리 II
10.1 스레드 이진 트리 10.2 이진 탐색 트리 10.2.1 이진 탐색 트리 순회 및 탐색 10.2.2 탐색을 위한 경로 길이 10.2.3 삽입 및 삭제 10.3 Splay, AVL, BB 트리 10.3.1 Splay 트리 10.3.2 AVL 트리 10.3.3 BB 트리 연습문제
11 트리 III
11.1 m원 탐색 트리 11.2 B, B*, B+ 트리 11.2.1 B 트리 11.2.2 B* 트리 11.2.3 B+ 트리 11.3 2-3, 2-3-4, 레드 블랙 트리 11.3.1 2-3 트리 11.3.2 2-3-4 트리 11.3.3 레드 블랙 트리 연습문제
12 순 환
12.1 순환 함수 12.2 순환 함수의 실행 과정 12.3 순환 함수의 복잡도 12.3.1 순환 알고리즘 12.3.2 순환 방정식 12.3.3 순환 방정식의 해법 연습문제
13 탐색과 해싱
13.1 선형 탐색 13.1.1 선형 탐색 13.1.2 개선한 선형 탐색 13.2 이진 탐색과 이진 탐색 트리 13.2.1 이진 탐색 13.2.2 이진 탐색 트리의 탐색 성능 13.3 해싱 13.3.1 해시 함수 13.3.2 충돌 해결 방안 연습문제
14 정 렬
14.1 교환법 14.1.1 버블 정렬 14.1.2 퀵 정렬 14.2 삽입법 14.2.1 삽입 정렬 14.2.2 쉘 정렬 14.3 선택법 14.3.1 선택 정렬 14.3.2 힙 정렬 연습문제
INDEX
|
똑똑한 프로그래머를 위한 똑똑한 데이터 구조
● 발행날짜 : 2016년 9월 1일
● 페이지 : 360페이지
● 판매처 : 온라인 서점
● 강의자료 제공
책 소개
책 소개
데이터 구조는 프로그램이 데이터를 효율적이고 효과적으로 처리할 수 있도록 잘 조직하는 것에 대한 것이다. 문제에 적합하게 데이터를 조직하고 구조를 정하여 처리 속도를 높일 수 있는가 하면 사용하는 기억장치를 획기적으로 줄일 수도 있다. 똑똑한 프로그래머는 컴퓨터가 문제를 잘 해결 할 수 있도록 데이터를 똑똑하게 조직하는 사람이다. 이 책은 똑똑한 프로그래머를 위한 똑똑한 데이터 구조
를 알려준다.
목차
01 기초 데이터 구조1.0 데이터 구조와 알고리즘
1.1 기초 데이터 구조
1.1.1 수치 데이터
1.1.2 비수치 데이터
1.2 스트링
1.2.1 스트링 데이터 구조
1.2.2 스트링 연산
1.3 레코드
1.3.1 레코드 선언
1.3.2 레코드 필드 참조
1.3.3 레코드 배열
1.3.4 중첩 레코드
연습문제
02 배 열
2.1 1차원 배열
2.2 다차원 배열
2.3 행렬, 배열의 응용
2.3.1 희소행렬
2.3.2 삼각행열
연습문제
03 스 택
3.1 스택
3.1.1 스택이란?
3.1.2 스택의 동작
3.1.3 스택의 배열 구현
3.1.4 스택 오버플로 처리
3.2 스택을 이용한 수식 계산
3.2.1 연산자 우선순위
3.2.2 수식 표기법
3.2.3 후위 표기식 계산 알고리즘
3.2.4 중위 표기식을 후위 표기식으로 변환하는 방법
3.3 미로 찾기
연습문제
04 큐
4.1 큐
4.1.1 큐란?
4.1.2 큐의 동작
4.1.3 큐의 배열 구현
4.2 원형 큐
4.3 데크
4.3.1 데크란?
4.3.2 데크의 동작
4.3.3 데크의 종류
4.3.4 큐의 응용
연습문제
05 리스트 I
5.1 순차 사상 순서 리스트
5.2 단순 연결 리스트
5.3 연결 리스트로 구현한 스택과 큐
5.3.1 연결 스택
5.3.2 연결 큐
연습문제
06 리스트 II
6.1 원형 연결 리스트
6.2 이중 연결 리스트
6.2.1 이중 연결 리스트
6.2.2 이중 원형 연결 리스트
6.2.3 다중 연결 리스트
6.3 연결 리스트의 응용
6.3.1 다항식 덧셈
6.3.2 희소 행렬
연습문제
07 그래프 I
7.1 그래프 기초
7.1.1 개념 및 용어
7.1.2 그래프 표현법
7.2 그래프 순회
7.2.1 깊이 우선 탐색
7.2.2 너비 우선 탐색
7.3 최소 신장 트리
연습문제 163
08 그래프 II
8.1 최단 경로와 도달 가능성
8.1.1 최단 경로 : 딕스트라 알고리즘
8.1.2 도달 가능성:바샬 알고리즘
8.2 위상 정렬
8.3 임계 경로
연습문제
09 트리 I
9.1 트리
9.2 이진 트리
9.2.1 이진 트리 기초
9.2.2 이진 트리의 구현
9.2.3 일반 트리를 이진 트리로 변환
9.2.4 트리의 응용
9.3 이진 트리의 순회와 삽입, 삭제
9.3.1 이진 트리의 순회
9.3.2 이진 트리 삽입, 삭제
연습문제
10 트리 II
10.1 스레드 이진 트리
10.2 이진 탐색 트리
10.2.1 이진 탐색 트리 순회 및 탐색
10.2.2 탐색을 위한 경로 길이
10.2.3 삽입 및 삭제
10.3 Splay, AVL, BB 트리
10.3.1 Splay 트리
10.3.2 AVL 트리
10.3.3 BB 트리
연습문제
11 트리 III
11.1 m원 탐색 트리
11.2 B, B*, B+ 트리
11.2.1 B 트리
11.2.2 B* 트리
11.2.3 B+ 트리
11.3 2-3, 2-3-4, 레드 블랙 트리
11.3.1 2-3 트리
11.3.2 2-3-4 트리
11.3.3 레드 블랙 트리
연습문제
12 순 환
12.1 순환 함수
12.2 순환 함수의 실행 과정
12.3 순환 함수의 복잡도
12.3.1 순환 알고리즘
12.3.2 순환 방정식
12.3.3 순환 방정식의 해법
연습문제
13 탐색과 해싱
13.1 선형 탐색
13.1.1 선형 탐색
13.1.2 개선한 선형 탐색
13.2 이진 탐색과 이진 탐색 트리
13.2.1 이진 탐색
13.2.2 이진 탐색 트리의 탐색 성능
13.3 해싱
13.3.1 해시 함수
13.3.2 충돌 해결 방안
연습문제
14 정 렬
14.1 교환법
14.1.1 버블 정렬
14.1.2 퀵 정렬
14.2 삽입법
14.2.1 삽입 정렬
14.2.2 쉘 정렬
14.3 선택법
14.3.1 선택 정렬
14.3.2 힙 정렬
연습문제
INDEX