A0L238Q Data Structure

(2 Credits, 32 Hours; Course Category: Basic Course; Specialty: Software Engineering; Prerequisite: Fundamentals of Programming, Discrete Mathematics)
Data Structure is a compulsory basic course for students of software engineering professionals. This course provides a basis for other courses such as Database System, Operating System, Software Engineering, etc. To design an algorithm of high-efficiency, we must study the characteristics of data as well as the relationship between them and the corresponding storage representations. Data structure is a discipline that will study computer operation objects of non-numerical computation problems as well as their relationship and operation.
This course introduces a variety of commonly used data structures, such as the linear lists, stacks, queues, strings, arrays, trees, binary trees, and graphic and other basic types of data structures and their application scopes, as well as a variety of algorithm of sort and search, focusing on time and space analysis and comparison.
This course has enhanced the practical training, including the training on algorithm design and comprehensive problem analyzing, thus improved the utility of the experiments. Through the learning and training of this course, students will understand the basic concepts of data structures, master the logical relationship, storage representations as well as operations and application of various data structures. They will enhance the ability of reading information in English, the ability of independent problem analyzing and solving. They will strengthen the capabilities of C/C++ language programming, of cooperating and of professional qualities so as to lay a solid foundation to participate in innovative research and developmental work in the future.
After completing this course satisfactorily, students will be able to master
(1) the logical relationship, storage representation as well as operations and application scope of various data structures, include linear list, stack, queue, tree, graphic, set etc.
(2) the characteristic and performance of various research methods,
(3) the characteristic and performance of various sorting methods,
(4) the analysis of time and space and comparison of various algorithm,
(5) the ability of analyzing and solving problems independently, of programming and cooperation with teammates.