This course will instruct the students to master the basic methods of data organizing, representing and processing in computer science, train their problem-solving abilities in data structure and algorithm, and improve their algorithm designing and programming level. The course will lay a solid theoretical foundation for many IT-related follow-up courses, such as “Digital Image Processing and Image Communication”, “Network Technology and Application” and “Database Technology and Application”, which will benefit the development of non-numerical application software under the background of "Big Information". Besides, this course will help IT-related majors solve the problems of software design in their respective fields.
Including common data structures such as linear data structures, stacks and queues, arrays, trees and binary trees, collections, search trees, hash tables and graphs, this course will discuss recursive algorithms, typical searching algorithms and sorting algorithms and delivers basic methods of algorithm analysis.
By the end of this course, students should be able to (1) understand and master the common data structures such as linear data structures, stacks, queues, arrays, trees and graph from three aspects:data logical structure, storage structure, and operations; (2) implement the sorting and searching operations on the basis of various commonly-used data structures.; (3) acquire the ability to analyze time and space complexity of the algorithm; (4) process with appropriate data structure and effective algorithms to solve common application problems.