## AD3271 - Data Structures Design Laboratory (Syllabus) 2021-regulation Anna University

DATA STRUCTURES DESIGN LABORATORY

LTPC

0042

COURSE OBJECTIVES:
● To implement ADTs in Python
● To design and implement linear data structures – lists, stacks, and queues
● To implement sorting, searching and hashing algorithms
● To solve problems using tree and graph structures

We're excited to announce the launch of our new website! Visit NameWheelSpinner.com to explore its features and benefits.

LIST OF EXPERIMENTS:
Note: The lab instructor is expected to design problems based on the topics listed. The Examination shall not be restricted to the sample experiments designed.
1. Implement simple ADTs as Python classes
2. Implement recursive algorithms in Python
3. Implement List ADT using Python arrays
4. Linked list implementations of List
5. Implementation of Stack and Queue ADTs
6. Applications of List, Stack and Queue ADTs
7. Implementation of sorting and searching algorithms
8. Implementation of Hash tables
9. Tree representation and traversal algorithms
10. Implementation of Binary Search Trees
11. Implementation of Heaps
12. Graph representation and Traversal algorithms
13. Implementation of single source shortest path algorithm
14. Implementation of minimum spanning tree algorithms

COURSE OUTCOMES: At the end of the course, the student should be able to:
• implement ADTs as Python classes
• design, implement, and analyse linear data structures, such as lists, queues, and stacks, according to the needs of different applications
• design, implement, and analyse efficient tree structures to meet requirements such as searching, indexing, and sorting
• model problems as graph problems and implement efficient graph algorithms to solve them

TOTAL : 60 PERIODS

TEXT BOOKS:
1. Michael T. Goodrich, Roberto Tamassia, and Michael H. Goldwasser, “Data Structures and Algorithms in Python” (An Indian Adaptation), Wiley, 2021.
2. Lee, Kent D., Hubbard, Steve, “Data Structures and Algorithms with Python” Springer Edition 2015.
3. Narasimha Karumanchi, “Data Structures and Algorithmic Thinking with Python” Careermonk, 2015.

REFERENCES:
1. Rance D. Necaise, “Data Structures and Algorithms Using Python”, John Wiley & Sons, 2011.
2. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein, “Introduction to Algorithms", Third Edition, PHI Learning, 2010.
3. Mark Allen Weiss, “Data Structures and Algorithm Analysis in C++”, Fourth Edition, Pearson Education, 2014
4. Aho, Hopcroft, and Ullman, “Data Structures and Algorithms”, Pearson Education India, 2002