0% found this document useful (0 votes)
12 views

Course Code:22DS102

Uploaded by

245123742004
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views

Course Code:22DS102

Uploaded by

245123742004
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

With effect from the academic year 2022-23

Course Code:22DS102

ADVANCED DATA STRUCTURES


(Professional Core-II)

Instruction : 3 Periods/week Continuous Internal Evaluation : 40 Marks


Tutorial : - Semester End Examination : 60 Marks
Credits : 3 Semester End Exam Duration : 3 Hours

Course Objectives:

1. The student should be able to choose appropriate data structures, understand the
ADT/libraries and use it to design algorithms for a specific problem.
2. Students should be able to understand the necessary mathematical abstraction to solve
problems.
3. To familiarize students with advanced paradigms and data structures used to solve
algorithmic problems.
4. Students should be able to come up with analysis of efficiency and proofs of
correctness.

UNIT-I: Dictionaries:

Definition, Dictionary Abstract Data Type, Implementation ofDictionaries.

Hashing: Review of Hashing, Hash Function, Collision Resolution Techniques in Hashing,


Separate Chaining, Open Addressing, Linear Probing, Quadratic Probing, Double Hashing,
Rehashing, Extendible Hashing.

UNIT-II: Skip Lists:

Need for Randomizing Data Structures and Algorithms, Search and Update Operations on Skip
Lists-insertion, removal, Maintaining the top most level, Probabilistic Analysis of Skip Lists-
bounding the height of a skip list, analyzing the search time of a skip list, space usage in skip
list, Deterministic Skip Lists.

UNIT-III: Trees:

Preliminaries, Implementation of Trees, Tree Traversal with an application, Binary Trees-


expression trees, The Search Tree ADT-Binary Search Tree-make null, Find, find-min, find-max,
insert, delete, average case analysis, AVL Trees-Single-Rotation, Double Rotation, Red Black
Trees, 2-3 Trees, B-Trees, Splay Trees.

UNIT-IV: Text Processing:

String Operations, Brute-Force Pattern Matching, The Boyer-Moore Algorithm, The Knuth-
Morris-Pratt Algorithm, Standard Tries, Compressed Tries, Suffix Tries, The Huffman Coding
Algorithm, The Longest Common Subsequence Problem (LCS), Applying Dynamic Programming
to the LCS Problem.

UNIT-V:

Computational Geometry: One Dimensional Range Searching, Two-Dimensional Range


Searching, Constructing a Priority Search Tree, Searching a Priority Search Tree, Priority Range
Trees, Quadtrees, k-D Trees. Recent Trends in Hashing, Trees, and various computational
geometry methods for efficiently solving the new evolving problem.

Course Outcomes:

After completion of the course, students would be able to:

CO 1: Understand the implementation of symbol table using hashing techniques.


CO 2: Develop and analyze algorithms for skip lists.
CO 3: Develop and analyze algorithms for red-black trees, B-trees and Splay trees.
CO 4: Develop algorithms for text processing applications.
With effect from the academic year 2022-23

CO 5: Identify suitable data structures and develop algorithms for computational


geometryproblems.

Textbooks:

1. Mark Allen Weiss, Data Structures and Algorithm Analysis using JAVA, 2ndEdition,
Pearson, 2004.
2. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford
Stein,Introduction to Algorithms, Third edition, MITPress.

References:

1. Michael T. Goodrich&Roberto Tamassia,Data Structures and Algorithms in Java,2010


2. Mark de Berg, Otfried Cheong, Merc van Kreveld, Computational Geometry:
Algorithms and Applications, 3rd edition, Springer India.
3. Robert Sedgewick, Algorithms in JAVA, Addison Wesly,1990.
4. M T Goodrich, Roberto Tamassia, Algorithm Design, John Wiley, 2002.

You might also like