Outline & Objectives

Course OutlineThis course studies data abstraction, various data structures (arrays, lists, stacks, queues, trees, graphs, etc.) and effcient algorithms on those data structures. Through this course, students can enlarge the knowledge of computer science and can improve their programming skills.
Learning ObjectivesFamiliarity with the basic concepts of data structures such as arrays, lists, stacks, queues, trees, sorts, and searches. - Understand the basic concepts of data structure through hands-on practice and assignments - Completion of other courses in computer science majors and cultivation of minimum programming skills necessary for practical work.

Textbooks & References

TitleAuthor(s)PublisherYearISBN
C++ Plus Data Structures, Third EditionNell DaleJones and Bartlett20030763704814
C++ Data Structures, 2nd EditionLee Woong-jae, Kwon Jun Oh, Jin Il Kim, Shin Jaehong, Oh Yong-chul, Lim flower mirror, Cho Jae-hyun Gong stationScitecMidi Yes2003
C++ Data StructsLee Seok-ho StationKyobo Library2001
Data Structure Using C++Kwanhee Yoo, Yu Unlucky, Jung Byung-so, Jung Vellus AirspaceMiraecom2002

Evaluation Criteria

Mid Term30%
Final Term30%
Assignments10%
Presentation20%
Attendance10%

Lecture Schedule

WeekLecture Topics and Contents
Week 1Lecture Overview, Chap. 1 (Software Engineering Principle)
Week 2Chap. 2 (Data Design and Implementation)
Week 3Chap. 3 (Unsorted List and Sorted List) 1st part
Week 4Chap. 3 (Unsorted List and Sorted List) 2nd part
Week 5Chap. 4 (Stack and Queue) 1st part
Week 6Chap. 4 (Stack and Queue) 2nd part
Week 7Chap. 5 (Linked Structures)
Week 8Midterm Exam
Week 9Chap. 6 (Lists Plus)
Week 10Chap. 7 (Programming with Recursion)
Week 11Chap. 8 (Binary Search Trees) 1st part
Week 12Chap. 8 (Binary Search Trees) 2nd part
Week 13Chap. 9 (Priority Queue, Heaps, Graphs, and Sets)
Week 14Chap. 10 (Sorting and Searching Algorithms) 1st part
Week 15Chap. 10 (Sorting and Searching Algorithms) 2nd part
Week 16Final Exam