Compare courses
Register

Nanyang Technological University Center for Continuing Education

Algorithms - an Introduction With Applications

Available dates

This course has no confirmed dates in the future. Subscribe to be notified when it is offered.

About the course

Anyone who wants to write efficient computer programs must have good algorithms in the first place. So how do we know for sure that a good algorithm is at hand? This is an introductory course on algorithms which aims to provide students with basic but useful techniques for designing and analyzing computer algorithms. This course requires basic knowledge and experience of (at least one) programming language.

Objectives

Through this course, students will learn

  • Basic tools for analysis of the time and space requirements of computer algorithms
  • Useful techniques for designing algorithms.
  • Common problem areas and their algorithmic solutions
  • Sample applications of the basic but useful algorithms

Outline

DAY 1

  • Introductions
    • What are algorithms
    • Scalability: can your program handle non-trivial cases (e.g., large data sets)?
  • Basics for Analysis of Algorithms
    • time and space complexities of algorithms,
    • Big-Oh notation and order classes.
    • Basic techniques for deriving complexities
  • Basic Algorithmic Techniques and Data Sorting Algorithms
    • Insertion Sort, Heap Sort

Day 2

  • Data Sorting and Merging Algorithms (cont’d)
    • Quick Sort, Merging data sets, Merge Sort.
    • Analysis of their complexities.
  • Searching for Data
    • Binary search and hashing.
    • Analysis of their complexities.
    • Sample applications

Day 3

  • Graphs and Networks
    • Data structures of graphs and networks,
    • Basic traversal algorithms: BFS and DFS.
    • Single-source Shortest Paths algorithm,
    • Minimum Spanning Trees and algorithms.
    • Analysis of the above algorithms.
    • Sample Applications

Who should attend

Programmers who wish to write efficient programs; - School teachers who wish to refresh the concepts about algorithms; - Any one with intellectual curiosity about computing and wishes to improve problem solving techniques.

Trust the experts

Wen Jing Hsu

Hsu Wen Jing, PhD, Senior Member IEEE, is currently Principal Research Fellow in Maritime Institute, Nanyang Technological University, Singapore. He was a faculty member with School of Computer Science and Engineering, NTU for more than 20 years. He has offered courses at both undergraduate and g...

More...

Course reviews