C언어로 쉽게 풀어 쓴 자료구조 천인국 pdf 다운로드를 무료로 제공합니다 자료구조는 프로그래밍에 아주 중요하고 기초적인 분야 중의 하나이다. 입문자가 프로그래밍 언어를 학습한 이후에, 효율적인 프로그램을 작성하려면 자료구조 학습은 필수적이다
관련 책 pdf 모음
책 소개
그동안 자료구조 분야는 복잡하고 어렵게 생각되어 왔다. 개정판의 목표도 원저와 마찬가지로 학습자들이 좀 더 쉽게 자료구조를 이해할 수 있도록 하자는 것이었다. 개정판에서는 특히 다음과 같은 분야에 역점을 두었다. 입문자들이 자료구조의 개념을 좀 더 쉽게 이해할 수 있도록 원저의 순서를 변경하였다. 기초적인 자료구조라 할 수 있는 스택과 큐를 앞부분에 배치하였다. 입문자들은 스택과 큐를 통하여 자료구조가 무엇인지를 이해한 후에 좀 더 복잡한 자료구조인 연결리스트나 트리 등으로 나갈 수 있다. 코드에서 이중 포인터를 최대한 제거하였다. 입문자들에게 이중 포인터는 악몽이나 마찬가지이기 때문이다. 만약 함수 안에서 외부에서 전달된 포인터가 변경되면 변경된 포인터를 함수가 반환하도록 하였다. 새로운 응용 예제들을 추가되고 너무 복잡한 예제들은 삭제되었다. 항상 실질적이고 구체적인 응용 예제들을 제시하려고 노력하였다. 모든 예제에서 입력과 출력값을 표시하였다. 되도록 단편적인 프로그램이 아닌 완전한 프로그램을 제공하려고 노력하였다. 이 책이 만들어지기까지 많은 도움이 있었다. 특히 책 출간 이후로 격려해주신 교수님과 독자들께 감사드린다. 감수를 맡아주신 심규연 교수님과 생능출판사 여러분께도 감사드린다. 쪼록 이 책이 자료구조를 공부하는 이들에게 조금이라도 도움이 될 수 있었다면 필자에게는 큰 보람이 될 것이다.
C언어로 쉽게 풀어 쓴 자료구조 pdf
Chapter 01 자료구조와 알고리즘
1.1 자료구조와 알고리즘
1.2 추상 자료형
1.3 알고리즘의 성능 분석
■연습문제
Chapter 02 순환
2.1 순환의 소개
2.2 거듭제곱값 계산
2.3 피보나치 수열의 계산
2.4 하노이탑 문제
■연습문제
Chapter 03 배열, 구조체, 포인터
3.1 배열
3.2 구조체
3.3 배열의 응용: 다항식
3.4 배열의 응용: 희소행렬
3.5 포인터
3.6 동적 메모리 할당
■연습문제
Chapter 04 스택
4.1 스택이란?
4.2 스택의 구현
4.3 동적 배열 스택
4.4 스택의 응용: 괄호 검사 문제
4.5 스택의 응용: 후위 표기 수식의 계산
4.6 스택의 응용: 미로 문제
■연습문제
Chapter 05 큐
5.1 큐 추상 데이터 타입
5.2 선형큐
5.3 원형큐
5.4 큐의 응용: 버퍼
5.5 덱이란?
5.6 큐의 응용: 시뮬레이션
■연습문제
Chapter 06 연결 리스트 I
6.1 리스트 추상 데이터 타입
6.2 배열로 구현된 리스트
6.3 연결 리스트
6.4 단순 연결 리스트
6.5 단순 연결 리스트의 연산 구현
6.6 연결 리스트의 응용: 다항식
■연습문제
Chapter 07 연결 리스트 II
7.1 원형 연결 리스트
7.2 원형 연결 리스트는 어디에 사용될까?
7.3 이중 연결 리스트
7.4 예제: mp3 재생 프로그램 만들기
7.5 연결 리스트로 구현한 스택
7.5 연결 리스트로 구현한 큐
■연습문제
Chapter 08 트리
8.1 트리의 개념
8.2 이진 트리 소개
8.3 이진 트리의 표현
8.4 이진 트리의 순회
8.5 반복적 순회
8.6 레벨 순회
8.7 트리의 응용: 수식 트리 처리
8.8 트리의 응용: 디렉토리 용량 계산
8.9 이진 트리의 추가 연산
8.10 스레드 이진 트리
8.11 이진 탐색 트리
8.12 이진 탐색 트리의 응용: 영어 사전
■연습문제
Chapter 09 우선순위 큐
9.1 우선순위 큐 추상 데이터 타입
9.2 우선순위 큐의 구현 방법
9.3 히프
9.4 히프의 구현
9.5 히프 정렬
9.6 머쉰 스케줄링
9.7 허프만 코드
■연습문제
Chapter 10 그래프 I
10.1 그래프란?
10.2 그래프의 정의와 용어
10.3 그래프의 표현 방법
10.4 그래프의 탐색
10.5 깊이 우선 탐색
10.6 너비 우선 탐색
■연습문제
Chapter 11 그래프 II
11.1 최소 비용 신장 트리
11.2 Kruskal의 MST 알고리즘
11.3 Prim의 MST 알고리즘
11.4 최단 경로
11.5 Dijkstra의 최단 경로 알고리즘
11.6 Floyd의 최단 경로 알고리즘
11.7 위상 정렬
■연습문제
Chapter 12 정렬
12.1 정렬이란?
12.2 선택 정렬
12.3 삽입 정렬
12.4 버블 정렬
12.5 쉘 정렬
12.6 합병 정렬
12.7 퀵 정렬
12.8 히프 정렬
12.9 기 수정렬
12.10 정렬 알고리즘의 비교
12.11 정렬의 응용: 영어 사전을 위한 정렬
■연습문제
Chapter 13 탐색
13.1 탐색이란?
13.2 정렬되지 않은 배열에서의 탐색
13.3 정렬된 배열에서의 탐색
13.4 이진 탐색 트리
13.5 AVL트리
13.6 2-3 트리
13.7 2-3-4 트리
■연습문제
Chapter 14 해싱
14.1 해싱이란?
14.2 추상 자료형 사전
14.3 해싱의 구조
14.4 해시함수
14.5 개방 주소법
14.6 체이닝
14.7 해싱의 성능 분석
14.8 해싱의 응용 분야
■연습문제
■찾아보기