본문 바로가기

Computer Engineering/Data Structures Using C

[C언어] 자료구조 공부하기

반응형

자료구조와 함께 배우는 알고리즘 입문 C언어편 (보요 시바타 지음, 강민 옮김, 이지스퍼블리싱) 

 

목차

01 기본 알고리즘

 

01-1 알고리즘이란?

세 값의 최댓값

조건 판단과 분기

순서도의 기호

 

01-2 반복

1부터 n까지의 정수 합 구하기

양수만 입력하기

구조적 프로그래밍

다중 루프

직각 이등변 삼각형 출력

 

02 기본 자료구조

02-1 배열

자료구조

배열

메모리 할당 기간과 동적 객체 생성

배열의 동적 생성

배열 요소의 최댓값 구하기

배열 요소를 역순으로 정렬하기

기수 변환

소수의 나열

다차원 배열

한 해의 지난 날 수를 계산하는 프로그램

 

02-2 구조체

구조체란?

구조체의 배열

 

03 검색

03-1 검색 알고리즘

검색과 키

배열에서 검색하기

 

03-2 선형 검색

선형 검색

보초법

 

 

03-3 이진 검색

이진 검색

복잡도

bsearch 함수

비교 함수

구조체 배열에서 검색하기

 

04 스택과 큐

04-1 스택

스택이란?

스택 만들기

 

04-2 큐

큐란?

배열로 큐 만들기

링 버퍼로 큐 만들기

 

05 재귀 알고리즘

05-1 재귀의 기본

재귀란?

순차곱셈 구하기

유클리드 호제법

 

05-2 재귀 알고리즘 분석

재귀 알고리즘의 분석

재귀 알고리즘의 비재귀적 표현

 

05-3 하노이의 탑

하노이의 탑

 

05-4 8퀸 문제

8퀸 문제란?

퀸 놓기

가지 뻗기

분기 한정법

8퀸 문제를 푸는 프로그램


 





















06 정렬

06-1 정렬

정렬이란?

 

06-2 버블 정렬

버블 정렬

 

06-3 단순 선택 정렬

단순 선택 정렬

 

06-4 단순 삽입 정렬

단순 삽입 정렬

 

06-5 셸 정렬

단순 삽입 정렬의 특징

셸 정렬

06-6 퀵 정렬

퀵 정렬 살펴보기

배열을 두 그룹으로 나누기

퀵 정렬

비재귀적인 퀵 정렬

 

06-7 병합 정렬

정렬을 마친 배열의 병합

병합 정렬

 

06-8 힙 정렬

힙이란?

힙 정렬

배열을 힙으로 만들기

 

06-9 도수 정렬

도수 정렬


07 집합

07-1 집합

집합과 원소

부분집합과 진부분집합

집합의 연산

 

07-2 배열로 집합 만들기

배열로 집합 만들기

 

07-3 비트 벡터로 집합 만들기

비트 벡터로 집합 만들기

 

08 문자열 검색

08-1 문자열의 기본

문자열이란?

문자열 리터럴

배열에 문자열 저장하기

포인터와 문자열

문자열의 길이

문자열에서 문자 검색하기

문자열 비교

 

08-2 브루트-포스법

문자열 검색이란?

브루트-포스법

 

08-3 KMP법

KMP법

08-4 Boyer-Moore법

Boyer-Moore법

 

09 리스트

09-1 선형 리스트

선형 리스트란?

배열로 선형 리스트 만들기

 

09-2 포인터로 연결 리스트 만들기

포인터로 연결 리스트 만들기

 

09-3 커서로 연결 리스트 만들기

커서로 연결 리스트 만들기

프리 리스트

 

09-4 원형 이중 연결 리스트

원형 리스트

이중 연결 리스트

원형 이중 연결 리스트

 

10 트리

10-1 트리

트리란?

순서 트리 탐색

 

10-2 이진트리와 이진검색트리

이진트리

완전이진트리

이진검색트리

이진검색트리 만들기

 

11 해시

11-1 해시법

정렬된 배열에 새로운 값 추가하기

해시법

충돌

체인법

오픈 주소법

 

 

 

 

www.easyspub.co.kr/20_Menu/BookView/178/PUB

 

http://www.easyspub.co.kr/20_Menu/BookView/178/PUB

 

www.easyspub.co.kr

소스, 정오표 링크입니다.

 

 

 

 

 

 

반응형