Syllabus
Unit I
Introduction to Data Structures: Need and Relevance – Abstract Data Types and Data Structures – Principles, and Patterns. Basic complexity analysis – Best, Worst, and Average Cases – Asymptotic Analysis -Analyzing Programs – Space Bounds, recursion- linear, binary, and multiple recursions. Arrays, Linked Lists and Recursion: Using Arrays – Lists – Array based List Implementation – Linked Lists – LL ADT – Singly Linked List – Doubly Linked List – Circular Linked List Stacks and Queues: Stack ADT – Array based Stacks, Linked Stacks – Implementing Recursion using Stacks, Stack Applications. Queues – ADT, Array based Queue, Linked Queue, Double-ended queue, Circular queue, applications.
Unit II
Trees: Tree Definition and Properties – Tree ADT – Basic tree traversals – Binary tree – Data structure for representing trees – Linked Structure for Binary Tree – Array based implementation. Priority queues: ADT – Implementing Priority Queue using List – Heaps. Maps and Dictionaries: Map ADT – List based Implementation – Hash Tables – Dictionary ADT. Skip Lists – Implementation – Complexity.
Unit III
Search trees Binary search tree, AVL tree and its rotation Segment Trees – B-Trees. Implementation. External Memory Sorting and Searching. Graphs: ADT- Data structure for graphs – Graph traversal- Transitive Closure- Directed Acyclic graphs – Weighted graphs Shortest Paths – Minimum spanning tree Greedy Methods for MST.Persistent data structures, fusion trees, Bloom filter, Game Trees (Case Study)
Objectives and Outcomes
Course Objectives
To introduce students to the depths and richness of the Indian culture and knowledge traditions, and to enable them to obtain a synoptic view of the grandiose achievements of India in diverse fields. To equip students with a knowledge of their country and its eternal values.
Course Outcomes
CO1: Increase student understanding of true essence of India’s cultural and spiritual heritage. Emancipating Indian histories and practices from manipulation, misunderstandings, and other ideological baggage thus, shows its contemporary relevance.
CO2: Understand the ethical and political strategic concepts to induce critical approach to various theories about India.
CO3: Familiarize students with the multidimension of man’s interaction with nature, fellow beings and society in general.
CO4: Appreciate the socio-political and strategic innovations based on Indian knowledge systems. Gives an understanding of bringing Indian teaching into practical life.
CO-PO Mapping
PO/PSO
|
PO1 |
PO2 |
PO3 |
PO4 |
PO5 |
PO6 |
PO7 |
PO8 |
PO9 |
PO10 |
PO11 |
PO12 |
PSO1 |
PSO2 |
PSO3 |
CO |
CO1 |
3 |
1 |
1 |
– |
– |
– |
–
|
1 |
1 |
1 |
– |
– |
– |
– |
– |
CO2 |
3 |
1 |
1 |
– |
– |
– |
– |
1 |
1 |
1 |
– |
– |
– |
– |
– |
CO3 |
3 |
2 |
1 |
– |
– |
– |
– |
1 |
1 |
1 |
– |
– |
– |
– |
– |
CO4 |
3 |
2 |
1 |
– |
– |
– |
– |
1 |
1 |
1 |
– |
– |
– |
– |
– |
Evaluation Pattern
Evaluation Pattern: 50:50
Assessment |
Internal |
External |
CA |
30 |
|
Mid-semester |
30 |
|
End Semester |
|
40
|
Text Books / References
Textbook(s)
Michael T Goodrich and Roberto Tamassia and Michael H Goldwsasser, “Data Structures and Algorithms in Python++”, John Wiley publication, 2013.
Reference(s)
- Michael T Goodrich and Roberto Tamassia and Michael H Goldwsasser, “Data Structures and Algorithms in Java”, Fifth edition, John Wiley publication, 2010.
- Tremblay J P and Sorenson P G, “An Introduction to Data Structures with Applications”, Second Edition, Tata McGraw-Hill, 2002.
- Clifford A. Shaffer, “Data Structures and Algorithm Analysis”, Third Edition, Dover.
- Dinesh P. Mehta, Dinesh P. Mehta, Sartaj Sahni, “Handbook of Data Structures and Applications”, Chapman and Hall/CRC, 2004.
- George Heineman Gary Pollice, Stanley Selkow, “Algorithms in a Nutshell”, O′Reilly; 2nd edition, 2016.