Assoc. Prof. D Turgay Altılar

 

BLG341E

Advanced Data Structures

Course Objectives :

1 - This course aims to introduce the structures and techniques which are necessary at advanced level courses of Computer Engineering education such AS Data Base, Computer Networks, Artificial Intelligence
2 - Ability to develop a program to solve a specific problem by using advanced data structures and interpret the obtained results
3 - Ability to examine a given solution based on the techniques learned in the course and enhance it
4 - Ability to understand and write in english since the course is given in English

Course Content :

Introduction, Secondary Storage Devices, Asymptotic Analysis; Recurrences, classwork; Sorting, merge sort, heap sort; Dictionaries, hashing, classwork; Binary search trees, 2-3 trees, 2-3-4 trees, red and black trees; B-trees; Other balanced trees: AVL, Splay, Tries; Binomial heaps; Fibonacci heaps; Sorting Networks; String-matching algorithms

Learning Outcomes :

1 - Get knowledge on asymptotic notation
2 - Learn how to solve recurrences.
3 - Learn about the some sorting algorithms, such as merge, quick, heapsort.
4 - Be familiar with the complicated data structures and algorithms used to store and retrieve data quickly into/from a file (hashing, B-trees, Red and Black trees, AVL trees).
5 - Be familiar with the heap structure, its kinds (Binomial, Fibonacci) and applications.
6 - Understand how to analyze the search and/or sort time performance ofadvanced data structures and decide on the appropriate advanced data structure for a given problem.
7 - Be familiar with sorting networks.
8 - Be familiar with string matching algorithms.

 

 

 

 

 Designed by Nazli Sanberk This document was last modified on: