Home - Courses - A - Content

Algorithms and Data Structures

ProgramTeacherCreditDuration

Computer Science

Mei Yu

4

80

Course Name: Algorithms and Data Structures

Course Code: S2293196

Semester: 1

Credit: 4

Program: Computer Science

Course Module: Specialized Compulsory

Responsible: Mei Yu

E-mail: yumei@tju.edu.cn

Department: School of Computer Science & Technology, Tianjin University

Time Allocation (1 credit hour = 45 minutes)

Exercise

Lecture

Lab-study

Project

Internship (days)

Personal Work

16

32

32

20

Course Description:

The course is a required course designed for Engineering Master of Computer Science in TIEI. The part of the data structure introduces the basic data structure systematically and some kinds of the applications. The part of algorithm analysis introduces some basic algorithms based on the basic data structures. Meanwhile, the algorithm analysis introduces the methods and techniques of the algorithms, in order to develop students the ability of programming and the ability of data abstraction. By the end of this course, students are able to use the basic data structure, and can calculate the time complexity and space complexity of the algorithms.

Prerequisite

Theoretical Computer Science: calculate the time complexity and space complexity.

The C language programming: the definition and application of the array, the integer and the struct.

Course Objectives

The course mainly introduces the concepts of the data structure and some basic algorithms. After this course, students should be able to:

  • Master the basic data structure, such as the array, the tree and the graph,

  • Master some basic data structure application,

  • Master some basic algorithms: binary search, bubble sort, and to

  • Master how to analyze the complexity of the time and space.

Course Syllabus

  • The basic data structure: linear list, stack, queue, tree and graph,

  • Manage the queue for the queue algorithms,

  • The comparison of the different sorting algorithms: bubble sort, heap sort, quick sort, merge sort,

  • The basic path search algorithms: DFS algorithm and BFS algorithm,

  • Connectivity: Strong Connectivity, Relevant Connectivity, etc,

  • The minimum tree cover: Dijkstra algorithm , Kruskal algorithm, and to

  • The shortest path algorithms: Dijkstra algorithm, Bellman-Ford algorithm.

Textbooks & References

  • Robert Sedgewick and Kevin Wayne.Algorithms (4th Edition). Addison-Wesley Professional, 2011.

  • Knuth D E.The art of computer programming: sorting and searching. Pearson Education, 1998.

  • Cormen T H. Introduction to algorithms. MIT press, 2009.

  • Samet H.The design and analysis of spatial data structures. Addison-Wesley, 1990.

Capability Tasks

CT1: To understanding the basic concepts of data structure and algorithm.

CT2: To use data structure and algorithms to solve some practical problems.

CT3: To master data structure and algorithms thought.

CS1: To master data structure and algorithms theory and to know about the trend of data structure and algorithm.

CS3: To master the data structure and algorithms and solve some applications.

Achievements

  • To master the basic concept of the data structure and algorithms. - Level: M

  • To master the code of the search and its application scenarios. - Level: M

  • To master the advantages and disadvantages of the algorithms. - Level: M

  • To master the basic code of the search algorithms and its application. - Level: N

  • To master, apply and adjust the shortest path algorithms. - Level: N

Students: Computer science Year 1