CSS3122 – Data Structure and Algorithms

Course Description

To provide the students the fundamental knowledge of data structures and algorithms so that the students are able to design good data structures and simplify the algorithm. The students will learn C programming language as it is allows the students to understand the fundamental computer science concepts. ​This course provides the fundamental knowledge about data structure and algorithm, such as primitive data types, pointer, ADT; and algorithms such as recursive function, sorting, and searching. The students learn C programming language which has the syntax that widely affected modern programming languages.

​​Content Outline of the Course/Module

  • Software Engineering Principles
  • ​Data Types and Pointer
  • ​Recursive and Algorithm Efficiency
  • ​Sorting Algorithms
  • ​Searching Techniques
  • ​Abstract Data Types (ADT)

Course Outcome

Upon completion of this course, students should be able to:

  • Explain the data structure and algorithm on how to organize and process the data.
  • Write programs that can receive input, produce output, and process the data.
  • Demonstrate the understanding of pointer and abstract data type (ADT).

Subject Area


Course Director

Daniel Tan Yong Wen

​​​Teaching-learning Methods Assessment Methods
Lecture ​Assignment, Progress Test, Final Examination
Practical ​Assignment
Computer-based Learning ​Assignment