This course introduces the basic concept of data representation and manipulation.

We will teach how to solve problems efficiently and effectively by using proper

and specific data structures, and organizing series of operations called

algorithms to manipulate data to solve the problems. For instance, you will be

able to understand how to use li

2. Prerequisite Course

C/C++ Programming Language

3. Text Books

=548; Fundamentals of Data Structures in C++, E. Horowitz, S. Sahni, and D.

Mehta, 2nd ed., 2006.

4. References

=548; Introduction to Algorithms, 3rd ed., by Cormen et al.

=548; C++ reference (http://www.cplusplus.com/reference/)

5. Teaching Method

Lectures

6. Course Outline

=548; Basic Concepts

=548; Arrays

=548; Stacks and queues

=548; li

=548; Trees

=548; Graphs

=548; Sorting

=548; Hashing

=548; Selected related topics

7. Evaluation

Quiz: 30%

Midterm Exam: 15%

Final Exam: 15%

Projects: 40%

8. Webl

ILMS (http://lms.nthu.edu.tw/)