Singapore University of Social Sciences

Data Structures and Algorithms II (MTH252)

Synopsis

MTH252 will be a continuation to MTH251 and provide students with an understanding of more advanced common algorithms and data structures used in information technology. The topics covered are of central importance for many applications in data analytics and information technology. The course gives a comprehensive introduction to more advanced topics such as priority queues, hash tables, search trees, sorting and selection. Additionally, the course covers how such algorithms are implemented using the software Python. MTH252 will be paired with MTH251 so that students upon the completion of both courses will have a better understanding of the contents in the field of data structures and algorithms.

Level: 2
Credit Units: 5
Presentation Pattern: Every January

Topics

  • Priority Queues
  • Maps
  • Hash Tables
  • Skip Lists
  • Search Trees
  • AVL Trees
  • Sorting
  • Selection
  • Text Processing
  • Dynamic Programming
  • Data Structures for Graphs
  • Graph Traversals

Learning Outcome

  • Describe how to implement priority queues, hash tables and search trees.
  • Explain the notions of hashing and search trees.
  • Present sorting algorithms and pattern-matching algorithms in text processing.
  • Analyze the efficiency and complexity of different algorithms.
  • Solve problems using recursive algorithms.
  • Develop an efficient algorithm to sort a set of objects in sequence or search a string pattern out of a document.
Back to top
Back to top