Table of Contents

Chapter 01. 자료구조와 알고리즘의 이해 01-1. 자료구조(Data Structure)에 대한 기본적인 이해 01-2. 알고리즘의 성능분석 방법 프로그래밍 문제의 답안 Chapter 02. 재 귀(Recursion) 02-1. 함수의 재귀적 호출의 이해 02-2. 재귀의 활용 02-3. 하노이 타워: The Tower of Hanoi Chapter 03. 연결 리스트(Linked List) 1 03-1. 추상 자료형: Abstract Data Type 03-2. 배열을 이용한 리스트의 구현 프로그래밍 문제의 답안 Chapter 04. 연결 리스트(Linked List) 2 04-1. 연결 리스트의 개념적인 이해 04-2. 단순 연결 리스트의 ADT와 구현 04-3. 연결 리스트의 정렬 삽입의 구현 프로그래밍 문제의 답안 Chapter 05. 연결 리스트(Linked List) 3 05-1. 원형 연결 리스트(Circular Linked List) 05-2. 양방향 연결 리스트 프로그래밍 문제의 답안 Chapter 06. 스택(Stack) 06-1. 스택의 이해와 ADT 정의 06-2. 스택의 배열 기반 구현 06-3. 스택의 연결 리스트 기반 구현 06-4. 계산기 프로그램 구현 프로그래밍 문제의 답안 Chapter 07. 큐(Queue) 07-1. 큐의 이해와 ADT 정의 07-2. 큐의 배열 기반 구현 07-3. 큐의 연결 리스트 기반 구현 07-4. 큐의 활용 07-5. 덱(Deque)의 이해와 구현 프로그래밍 문제의 답안 Chapter 08. 트리(Tree) 08-1. 트리의 개요 08-2. 이진 트리의 구현 08-3. 이진 트리의 순회(Traversal) 08-4. 수식 트리(Expression Tree)의 구현 프로그래밍 문제의 답안 Chapter 09. 우선순위 큐(Priority Queue)와 힙(Heap) 09-1. 우선순위 큐의 이해 09-2. 힙의 구현과 우선순위 큐의 완성 프로그래밍 문제의 답안 Chapter 10. 정렬(Sorting) 10-1. 단순한 정렬 알고리즘 10-2. 복잡하지만 효율적인 정렬 알고리즘 프로그래밍 문제의 답안 Chapter 11. 탐색(Search) 1 11-1. 탐색의 이해와 보간 탐색 11-2. 이진 탐색 트리 프로그래밍 문제의 답안 Chapter 12. 탐색(Search) 2 12-1. 균형 잡힌 이진 탐색 트리: AVL 트리의 이해 12-2. 균형 잡힌 이진 탐색 트리: AVL 트리의 구현 Chapter 13. 테이블(Table)과 해쉬(Hash) 13-1. 빠른 탐색을 보이는 해쉬 테이블 13-2. 충돌(Collision) 문제의 해결책 Chapter 14. 그래프(Graph) 14-1. 그래프의 이해와 종류 14-2. 인접 리스트 기반의 그래프 구현 14-3. 그래프의 탐색 14-4. 최소 비용 신장 트리 프로그래밍 문제의 답안