본문 바로가기

카테고리 없음

C로 배우는 쉬운 자료구조


다른 책으로 공부할 때는 내용이 어려워서 많이 걱정했는데..ㅠㅜ 그래도 이 책은 이해 못 할 정도도 아니고 초보자인 제가 이해되는걸 보면 내용이나 설명이 잘 쓰여진 책 같아요! 연습 문제들도 많아서 공부하고 확인하는 시간을 갖는 것 같아서 좋았습니다.ㅎㅎ 아예 처음 공부하는 것이기 때문에 어려운건 어쩔 수 없나봐요! 그래도 좋은 책 감사합니다!! 열심히 공부할게요~
단계별 그림과 삽화로 이론을 다지고
C 언어로 구현해 보는 자료구조 입문서

자료를 구조화하는 다양한 방법을 단계별 그림과 삽화를 곁들여 쉽게 설명하고, 자료구조의 핵심 알고리즘을 C 프로그램으로 차근차근 구현해 보도록 구성하였다. 이론과 실습을 병행할 수 있어 학습 효과를 극대화할 수 있고, 주어진 문제에 대한 최적의 해결 방법을 선택하고 활용할 수 있도록 도와주어 자료구조를 처음 배우는 학생들에게 안성맞춤이다. 또한 정보처리기사, 정보관리기술사, 공무원 시험 기출 문제를 활용한 연습문제를 실어 각종 자격증 취득과 취업 준비에도 도움이 되도록 하였다.

주요 개념을 삽화를 곁들어 소개하고 그 원리를 단계별 도해로 보여 준다. 자료구조의 핵심 알고리즘을 C 프로그램으로 단계별로 차근차근 구현하면서 이론과 실습을 병행할 수 있다. Self Test라는 코너를 통해 학습자 스스로 배운 내용을 체크해볼 수 있다. 연습문제를 통해 단순 개념 확인 문제부터 응용력을 기를 수 있는 프로그래밍 문제까지 다양한 유형의 문제를 경험할 수 있다. 또한 각종 자격증과 공무험 시험의 기출문제를 활용한 문제도 실어 관련 자격증이나 취업을 준비하는 독학생에게도 도움이 된다. 예제 파일을 비주얼 스튜디오 2015의 프로젝트 파일과 표준 C 소스 파일 두 가지 형태로 제공한다.


Chapter 01. 자료구조 소개
01. 자료구조의 이해
1. 자료구조의 개념
2. 자료구조의 분류
02. 자료의 표현
1. 컴퓨터에서의 자료 표현
2. 수치 자료의 표현
3. 문자 자료의 표현
4. 논리 자료의 표현
5. 포인터 자료의 표현
6. 문자열 자료의 표현
03. 자료의 추상화
04. 알고리즘의 이해
05. 알고리즘의 표현 방법
06. 알고리즘의 성능 분석
요약 / 연습문제

Chapter 02. 자료구조 구현을 위한 C 프로그래밍 기법
01. 배열
1. 배열의 개념
2. 1차원 배열
3. 다차원 배열
02. 포인터
1. 포인터 개념
2. 포인터 선언
3. 포인터 연산
4. 포인터 초기화
5. 포인터와 문자열
6. 포인터 배열
7. 포인터의 포인터(이중 포인터)
03. 구조체
1. 구조체 개념
2. 구조체 선언
3. 구조체 변수의 초기화
4. 데이터 항목의 참조
5. 구조체 연산
04. 재귀호출
1. 재귀호출의 개념
2. 재귀호출의 예 1 : 팩토리얼 함수
3. 재귀호출의 예 2 : 하노이 탑
요약 / 연습문제

Chapter 03. 순차 자료구조와 선형 리스트
01. 순차 자료구조와 선형 리스트의 이해
1. 순차 자료구조의 개념
2. 선형 리스트의 표현과 연산
02. 선형 리스트의 구현
1. 1차원 배열을 이용한 선형 리스트 구현
2. 2차원 배열을 이용한 선형 리스트의 구현
3. 3차원 배열의 순차 표현
03. 선형 리스트의 응용 및 구현
1. 다항식의 선형 리스트 표현
2. 행렬의 선형 리스트 표현
요약 / 연습문제

Chapter 04. 연결 자료구조와 연결 리스트
01. 연결 자료구조와 연결 리스트의 이해
1. 연결 자료구조의 개념
2. 연결 리스트의 이해
02. 단순 연결 리스트
1. 단순 연결 리스트의 개념
2. 단순 연결 리스트에서의 삽입 연산
3. 단순 연결 리스트에서의 삭제 연산
4. 단순 연결 리스트의 알고리즘과 프로그램
03. 원형 연결 리스트
1. 원형 연결 리스트의 개념
2. 원형 연결 리스트의 알고리즘
3. 원형 연결 리스트의 프로그램
04. 이중 연결 리스트
1. 이중 연결 리스트의 개념
2. 이중 연결 리스트의 알고리즘
3. 이중 연결 리스트의 프로그램
05. 연결 리스트의 응용 및 구현
1. 단순 연결 리스트를 이용한 다항식 표현
2. 다항식 연결 자료구조의 항 삽입 알고리즘
3. 다항식끼리의 덧셈 연산과 알고리즘
4. 연결 리스트를 이용한 다항식 프로그램
요약 / 연습문제
Chapter 05. 스택
01. 스택의 이해
1. 스택의 개념과 구조
2. 스택의 추상 자료형
02. 스택의 구현
1. 순차 자료구조를 이용한 스택의 구현
2. 연결 자료구조를 이용한 스택의 구현
03. 스택의 응용
1. 스택을 이용한 역순 문자열
2. 시스템 스택
3. 스택을 이용한 수식의 괄호 검사
4. 스택을 이용한 수식의 후위 표기법 변환
5. 스택을 이용한 후위 표기법 수식의 연산
요약 / 연습문제

Chapter 06. 큐
01. 큐의 이해
1. 큐의 개념과 구조
2. 큐의 추상 자료형
02. 큐의 구현
1. 순차 자료구조를 이용한 큐의 구현
2. 원형 큐의 구현
3. 연결 자료구조를 이용한 큐의 구현
03. 데크
04. 큐의 응용
1. 운영체제의 작업 큐
2. 시뮬레이션에서의 큐잉 시스템
요약 / 연습문제

Chapter 07. 트리
01. 트리의 이해
02. 이진 트리
1. 이진 트리의 개념과 구조
2. 이진 트리의 추상 자료형
3. 이진 트리의 종류
03. 이진 트리의 구현
1. 순차 자료구조를 이용한 이진 트리의 구현
2. 연결 자료구조를 이용한 이진 트리의 구현
04. 이진 트리의 순회
1. 이진 트리 순회의 개념
2. 전위 순회
3. 중위 순회
4. 후위 순회
5. 이진 트리 순회의 구현
6. 스레드 이진 트리
05. 이진 탐색 트리
1. 이진 탐색 트리의 개념
2. 이진 탐색 트리의 탐색 연산
3. 이진 탐색 트리의 삽입 연산
4. 이진 탐색 트리의 삭제 연산
5. 이진 탐색 트리의 구현
06. 균형 이진 탐색 트리
1. 균형 이진 탐색 트리의 개념
2. AVL 트리의 개념과 유형
3. AVL 트리의 회전 연산
4. AVL 트리의 구현
07. 히프의 개념과 연산 및 구현
1. 히프의 개념
2. 히프의 추상 자료형
3. 히프의 삽입 연산
4. 히프의 삭제 연산
5. 히프의 구현
요약 / 연습문제

Chapter 08 그래프
01. 그래프의 구조
1. 그래프의 개념
2. 그래프의 종류
3. 그래프 관련 용어
4. 그래프의 추상 자료형
02. 그래프의 구현
1. 순차 자료구조를 이용한 그래프의 구현 : 인접 행렬
2. 연결 자료구조를 이용한 그래프의 구현 : 인접 리스트
03. 그래프의 순회
1. 그래프 순회의 개념과 종류
2. 깊이 우선 탐색
3. 너비 우선 탐색
04. 신장 트리와 최소 비용 신장 트리
1. 신장 트리
2. 최소 비용 신장 트리
3. 최단 경로
요약 / 연습문제

Chapter 09 정렬
01. 정렬의 이해
1. 정렬의 개념
2. 정렬 방식의 분류
02. 선택 정렬
1. 선택 정렬의 이해
2. 선택 정렬 알고리즘
3. 선택 정렬 프로그램
03. 버블 정렬
1. 버블 정렬의 이해
2. 버블 정렬 알고리즘
3. 버블 정렬 프로그램
04. 퀵 정렬
1. 퀵 정렬의 이해
2. 퀵 정렬 알고리즘
3 퀵 정렬 프로그램
05. 삽입 정렬
1. 삽입 정렬의 이해
2. 삽입 정렬 알고리즘
3. 삽입 정렬 프로그램
06. 셸 정렬
1. 셸 정렬의 이해
2. 셸 정렬 알고리즘
3. 셸 정렬 프로그램
07. 병합 정렬
1. 병합 정렬의 이해
2. 병합 정렬 알고리즘
3. 병합 정렬 프로그램
08 기수 정렬
1. 기수 정렬의 이해
2. 기수 정렬 알고리즘
3. 기수 정렬 프로그램
09 히프 정렬
1. 히프 정렬의 이해
2. 히프 정렬 알고리즘
10 트리 정렬
1. 트리 정렬의 이해
2. 트리 정렬 알고리즘
3. 트리 정렬 프로그램
요약 / 연습문제

Chapter 10 검색
01. 검색의 이해
02. 순차 검색
1. 순차 검색
2. 색인 순차 검색
03. 이진 검색
04. 이진 트리 검색
05. 해싱
1. 해싱의 개념
2. 해싱 관련 용어
3. 해시 함수
4. 해싱에서 오버플로를 처리하는 방법
요약 / 연습문제


7. ADT·알고리즘·예제 목차

ADT 3-1 다항식의 추상 자료형
ADT 3-2 희소행렬의 추상 자료형
ADT 5-1 스택의 추상 자료형
ADT 6-1 큐의 추상 자료형
ADT 6-2 데크의 추상 자료형
ADT 7-1 이진 트리의 추상 자료형
ADT 7-2 히프의 추상 자료형
ADT 8-1 그래프의 추상 자료형
알고리즘 1-1 피보나치 수열
알고리즘 3-1 순차 리스트를 이용한 다항식의 덧셈 연산
알고리즘 3-2 희소행렬의 전치 연산
알고리즘 4-1 단순 연결 리스트의 첫 번째 노드 삽입
알고리즘 4-2 단순 연결 리스트의 중간 노드 삽입
알고리즘 4-3 단순 연결 리스트의 마지막 노드 삽입
알고리즘 4-4 단순 연결 리스트의 노드 삭제
알고리즘 4-5 단순 연결 리스트의 노드 탐색
알고리즘 4-6 원형 연결 리스트의 첫 번째 노드 삽입
알고리즘 4-7 원형 연결 리스트의 중간 노드 삽입
알고리즘 4-8 원형 연결 리스트의 노드 삭제
알고리즘 4-9 이중 연결 리스트의 노드 삽입
알고리즘 4-10 이중 연결 리스트의 노드 삭제
알고리즘 4-11 다항식 끝에 항 추가
알고리즘 4-12 단순 연결 리스트를 이용한 다항식 덧셈 연산
알고리즘 5-1 스택의 원소 삽입
알고리즘 5-2 스택의 원소 삭제
알고리즘 5-3 수식의 괄호 쌍 검사
알고리즘 5-4 후위 표기법으로 변환
알고리즘 5-5 후위 표기법으로 수식 연산
알고리즘 6-1 공백 순차 큐 생성
알고리즘 6-2 순차 큐 공백 상태 검사
알고리즘 6-3 순차 큐의 포화 상태 검사
알고리즘 6-4 순차 큐의 원소 삽입
알고리즘 6-5 순차 큐의 원소 삭제
알고리즘 6-6 순차 큐의 원소 검색
알고리즘 6-7 공백 원형 큐 생성
알고리즘 6-8 원형 큐의 공백 상태 검사
알고리즘 6-9 원형 큐의 포화 상태 검사
알고리즘 6-10 원형 큐의 원소 삽입
알고리즘 6-11 원형 큐의 원소 삭제
알고리즘 6-12 공백 연결 큐 생성
알고리즘 6-13 연결 큐의 공백 상태 검사
알고리즘 6-14 연결 큐의 원소 삽입
알고리즘 6-15 연결 큐의 원소 삭제
알고리즘 6-16 연결 큐의 원소 검색
알고리즘 7-1 이진 트리의 전위 순회
알고리즘 7-2 이진 트리의 중위 순회
알고리즘 7-3 이진 트리의 후위 순회
알고리즘 7-4 이진 탐색 트리의 노드 탐색
알고리즘 7-5 이진 탐색 트리의 노드 삽입
알고리즘 7-6 이진 탐색 트리의 노드 삭제
알고리즘 7-7 AVL 트리의 LL 회전
알고리즘 7-8 AVL 트리의 RR 회전
알고리즘 7-9 AVL 트리의 LR 회전
알고리즘 7-10 AVL 트리의 RL 회전
알고리즘 7-11 최대 히프의 노드 삽입
알고리즘 7-12 최대 히프의 노드 삭제
알고리즘 8-1 그래프의 깊이 우선 탐색
알고리즘 8-2 그래프의 너비 우선 탐색
알고리즘 8-3 다익스트라 최단 경로
알고리즘 8-4 플로이드 최단 경로
알고리즘 9-1 선택 정렬
알고리즘 9-2 버블 정렬
알고리즘 9-3 퀵 정렬
알고리즘 9-4 파티션 분할
알고리즘 9-5 삽입 정렬
알고리즘 9-6 셸 정렬
알고리즘 9-7 셸 부분집합에서의 삽입 정렬
알고리즘 9-8 병합 정렬
알고리즘 9-9 부분집합의 병합
알고리즘 9-10 기수 정렬
알고리즘 9-11 히프 정렬
알고리즘 9-12 히프 재구성
알고리즘 9-13 트리 정렬
알고리즘 10-1 정렬되지 않은 자료의 순차 검색
알고리즘 10-2 정렬된 자료의 순차 검색
알고리즘 10-3 정렬된 자료의 색인 순차 검색
알고리즘 10-4 인덱스 테이블
알고리즘 10-5 이진 검색
예제 2-1 자료형에 대한 메모리 할당 크기 확인하기
예제 2-2 학년별 취득 학점 입출력하기
예제 2-3 입력한 숫자를 구구단으로 출력하기
예제 2-4 문자 배열에 문자열을 저장하고 출력하기
예제 2-5 입력한 문자열의 길이 계산하기
예제 2-6 3차원 배열 입출력하기
예제 2-7 3차원 배열을 이용해 문자 배열 입출력하기
예제 2-8 포인터 연산자를 이용해 변수 액세스하기
예제 2-9 포인터를 이용해 문자열 처리하기
예제 2-10 포인터 배열을 이용해 문자열 저장하기
예제 2-11 포인터 배열과 포인터의 포인터 사용하기
예제 2-12 점 연산자를 이용해 데이터 항목 참조하기
예제 2-13 화살표 연산자를 이용해 데이터 항목 참조하기
예제 2-14 재귀호출을 이용해 팩토리얼 값 구하기
예제 2-15 재귀호출을 이용해 하노이 탑 퍼즐 풀기
예제 3-1 원소의 논리적·물리적 순서 확인하기
예제 3-2 2차원 배열의 논리적·물리적 순서 확인하기
예제 3-3 3차원 배열의 논리적·물리적 순서 확인하기
예제 3-4 순차 리스트를 이용해 다항식 덧셈하기
예제 3-5 희소행렬의 전치 연산하기
예제 4-1 단순 연결 리스트에 노드 삽입하기
예제 4-2 단순 연결 리스트에서 노드 삭제·탐색하기
예제 4-3 원형 연결 리스트에서 노드 삽입·삭제·탐색하기
예제 4-4 이중 연결 리스트에서 노드 삽입·삭제·탐색하기
예제 4-5 연결 리스트를 이용해 다항식 덧셈하기
예제 5-1 순차 자료구조를 이용해 순차 스택 구현하기
예제 5-2 연결 자료구조를 이용해 연결 스택 구현하기
예제 5-3 스택을 이용해 수식의 괄호 쌍 검사하기
예제 5-4 수식을 후위 표기법으로 연산하기
예제 6-1 순차 자료구조를 이용해 순차 큐 구현하기
예제 6-2 순차 자료구조를 이용해 원형 큐 구현하기
예제 6-3 연결 자료구조를 이용해 연결 큐 구현하기
예제 6-4 이중 연결 리스트를 이용해 데크 구현하기
예제 7-1 이진 트리 순회하기
예제 7-2 이진 트리의 후위 순회를 이용해 폴더 용량 계산하기
예제 7-3 스레드 이진 트리 구현하기
예제 7-4 이진 탐색 트리 연산하기
예제 7-5 AVL 트리 구현하기
예제 7-6 순차 자료구조를 이용해 최대 히프 구현하기
예제 8-1 그래프를 인접 행렬로 표현하기
예제 8-2 그래프를 인접 리스트로 표현하기
예제 8-3 그래프를 깊이 우선 탐색하기
예제 8-4 그래프를 너비 우선 탐색하기
예제 8-5 다익스트라 최단 경로 구하기
예제 8-6 플로이드 최단 경로 구하기
예제 9-1 선택 정렬하기
예제 9-2 버블 정렬하기
예제 9-3 퀵 정렬하기
예제 9-4 퀵 정렬하기
예제 9-5 삽입 정렬하기
예제 9-6 셸 정렬하기
예제 9-7 병합 정렬하기
예제 9-8 기수 정렬하기
예제 9-9 트리 정렬하기
예제 10-1 정렬되지 않은 자료를 순차 검색하기
예제 10-2 정렬된 자료를 순차 검색하기
예제 10-3 자료 색인 순차 검색하기
예제 10-4 정렬된 자료를 이진 검색하기
예제 10-5 이진 검색을 이용해 영어 사전 구현하기

 

사랑 후에 오는 것들

사랑 후에 오는 것들 읽다문득 얼마나 오랜만에 읽는 소설인가 ?!그런 생각을 했습니다오랜만에 소설을 읽으니 멜랑꼴리해집니다유명한 공지영 작가님과냉정과 열정사이의 츠지 히노타리 작가님이 공동집필한 소설이라는 점에서 눈길을 끌었습니다.전체적으로 가벼운 느낌으로 읽기 좋게쉽게 편안하게 쓰여져 있었습니다.편안함 속에서도 작가 분들의 섬세한 문장이 돋보였습니다.한국과 일본의 두 작가가 만나 완성한 사랑 소설 두 편. 남녀가 이별하고, 슬픔을 삭이고, 다시 만나고

oiakdjhd.tistory.com

 

2017 하반기 에듀윌 20대 공기업 NCS 직업기초능력평가+직무수행능력평가

배송이 어마어마합니다. 늦게 구매해서 당일배송 기대도 안했는데 바로 오네요. 택배는 한국이 선진국인듯 ㅋㅋㅋㅋㅋ 귀에 딱지 앉도록 들었던 화살코 그분이 광고하시던 에듀윌.. 친근한 이름에 선택하게 됐습니다. 아직 풀어보지는 않아서 다른 책들보다 어떤 부분에서 더 뛰어난지 모르겠지만 책 표지를 볼때마다 머릿속에서 그분의 음성이 자동재생되네요. 노래만 흥얼거리다 문제에 집중못하는 부작용이 생길지도...NCS 공기업 필기시험 대비 추천 NCS 교재(책)!NC

uisdd.tistory.com