강 의 계 획 서

2009 학년도 제 1 학기

교과구분	정보과학과	학점	3	담당교원	김용주	강의실	창조관 701호
교과목명	데이터구조	담당시수	3	연구실		수강대상
				창조관 707호		07,08학번

1.  교과목의 개요

목 표	프로그램의 효율적 작성을 위해서는 좋은 알고리즘의 개발이 필요한데, 이는 문제에 적합하고 적절한 자료구조를 사용할 때 가능하다. 자료구조는 많은 양의 데이터를 컴퓨터에서 사용할 수 있도록 구성하는 여러 방법을 제공하기 때문이다. 이런 이유로 프로그램을 작성해야 하는 학생들에게 있어 자료구조의 지식은 필수 요건이라 할 수 있다. 본 교과는 자료구조의 특성과 응용 및 구현에 큰 관심이 있는 학생을 대상으로 C++ 언어를 이용하여 자료구조에 대한 기본 개념과 다양한 자료구조의 예를 설명한다. 다양한 프로그래밍 과제를 통하여 적절한 자료구조를 이용한 프로그램을 구현해 봄으로써 자료구조의 중요성을 이해하는 것을 목표로 한다.
단 원	주 요 내 용
Chapter 1 Chapter 2 Chapter 3 Chapter 4 Chapter 5 Chapter 6 Chapter 7 Chapter 8 Chapter 9 Chapter 10 Chapter 11	Introduction to C++ and algorithms arrays Stacks and Queues Linked Lists : singly and doubly linked list Trees : basic facts, binary trees, search, heap Graphs : basic facts, representations, shortest paths, spanning trees, topological sortings Internal sorting : insertion, quick, merge, heap, radix Hashing Priority queues (Selected Topics) Efficient binary search trees (Selected Topics) multiway search trees (Selected Topics)

2.  교재 및 참고도서

가.  교    재  :

-	E. Horowitz, S. Sahni, D. P. Mehta, Fundamentals of Data Structure in C++, Computer Science Press

3.  평가방법

수행평가			중간평가	기말평가	출 결 및 수업태도	합 계	비 고
개별과제	퀴즈
25%	10%		25%	30%	10%	100%

4.  주별 강의계획서

주 별	강 의 및 실 험 내 용	과제 및 기타 참고사항
제1주	Introduction to C++ and algorithms	개별과제
제2주	Arrays	개별과제
제3주	Stacks and Queues	개별과제
제4주	Linked Lists	개별과제
제5주	Linked Lists	개별과제
제6주	Trees	개별과제
제7주	Trees	개별과제
제8주	midterm exam
제9주	Graphs	개별과제
제10주	Graphs	개별과제
제11주	Internal sorting	개별과제
제12주	Hashing	개별과제
제13주	Priority queues	개별과제
제14주	Efficient binary search trees	개별과제
제15주	Multiway search trees	개별과제
제16주	Final exam

♣ 작성요령 : 1란의 “교과목 개요”는 상세하게 작성한다.

3란의 “평가방법”의 평가요소와 반영비율은 학과별 협의에 따른다.