Copyright 2018 - CSIM - Asian Institute of Technology

Data Structures & Algorithms

Course code: AT70.02
Credits: 3(3–0)
This course is required

Course objectives

An algorithm describes how to carry out a problem-solving task implementable by computer programs. The design of an algorithm is tightly coupled with how information to be manipulated by it is organized i.e. data structuring. A course in Algorithm and Data Structure is therefore fundamental to a study in Computer Science.

Learning outcome

Fundamentals, Randomized Algorithms, Sorting, Hashing, Balanced Search Trees, Advanced Design Techniques, Graph Algorithms, Polynomials and the FFT, String Matching, Geometric Algorithms.

Course outline

I.        Foundations
1.     Asymptotic Analysis
2.     Recursion and Recurrences
 
II.      Randomized Algorithms
1.     Indicator Variables
2.     Probabilistic Analysis
 
III.     Sorting
1.     Quicksort
2.     Sorting in Linear Time
3.     Order Statistics
 
IV.     Hashing
1.     Hash Tables
2.     Hash Functions
3.     Universal Hashing
4.     Perfect Hashing
 
Data Structures and Algorithm Analysis in C++, 3rd Ed. by Weiss. Addison Wesley.

Back to the list

 

Login Form

Search

School of Engineering and technologies     Asian Institute of Technology