SC1007 Data Structures and Algorithms

Course Provider

School of Computer Science and Engineering (SCSE)


Continuing Education and Training Certificate

Academic Unit



This course aims to (i) teach the concepts, implementations and applications of data structures such as arrays, linked lists, stacks, queues and trees that are important for building efficient algorithms; (ii) provide an introduction to algorithm analysis and design. These are essential for future computer science and computer engineering courses.


*This is a standalone credit-bearing course from NTU Undergraduate Degree Programmes.


By the end of this course, the student would be able to:

1. Select appropriate data structures such as arrays, linked lists, stacks, queues and trees and implement algorithms to solve real world problems using these data structures in C.

2. Conduct complexity analysis of simple algorithms.

3. Select and implement appropriate search algorithm (sequential search, binary search, search using hash tables) as part of a problem solution in C. Compare the efficiencies of these search algorithms.

4. Select and implement appropriate graph traversal algorithm (DFS, BFS) as part of a problem solution in C. Analyse the complexities of these graph traversal algorithms.

  1. Dynamic memory allocation
  2. Linked Lists
  3. Abstract Data Types and Their Implementation
  4. Tree Structures
  5. Introduction and Analysis of algorithms
  6. Searching
  7. Graph Representations and Searching
Working Professionals

Standard Course Fee: S$3,113.70


Course fee payable after SSG funding, if eligible under various schemes  
Cat-A SSG Funded Courses N.A.
Enhanced Training Support for SMEs (ETSS)  N.A.
Mid-Career Enhanced Subsidy (MCES) N.A.


  • All fees stated are inclusive of 7% GST
  • SkillsFuture Credit can be used to offset course fees payable. Click here for more information.
  • NTU/NIE alumni may utilise their $1,600 Alumni Course Credits. Click here for more information.