DSA Syllabus
DSA Syllabus
Course Objectives:
1. To enable an efficient storage of data for an easy access.
2. To understand concepts about searching and sorting techniques
3. To empower the student in writing algorithms to solve problems using step by step
approach with the help of fundamental data structures.
4. To develop skills in data protection and management.
5. To enhance skills to pick out the underlying algorithms in real-world problems and
solve them efficiently.
CONTENTS
UNIT-I
[12 Hours]
INTRODUCTION TO DATA STRUCTURE:
Definition, classification of data structure, Examples of data structure. Searching and Sorting: Various
sorting techniques: Selection sort -bubble sort -Quick sort, Merge sorting. Sequential searching,
Binary searching.
UNIT-II
[12 Hours]
LINEAR DATA STRUCTURE:
Representation of arrays, Applications of arrays, Stack: Stack-Definitions & Concepts,
Operations On Stacks, Applications of Stacks, Polish Expression, Reverse Polish Expression
And Their Compilation, Recursion, Tower of Hanoi, Queue: Representation Of Queue, Operations
On Queue, Circular Queue, Priority Queue, Array, Double Ended Queue, Applications of
Queue, Linked List: Singly Linked List, Doubly Linked list, Circular linked list ,Linked
implementation of Stack, Linked implementation of Queue, Applications of linked list.
UNIT-III
[12 Hours]
NONLINEAR DATA STRUCTURE:
Tree-Definitions and Concepts, Representation of binary tree, Binary tree traversal (In order, post
order, preorder), Threaded binary tree, Binary search trees, Applications of Trees-Some balanced tree
mechanism, e.g., AVL trees, 2-3 trees, Height Balanced, Weight Balance, Graph-
MatrixRepresentation of Graphs, Elementary Graph operations, (Breadth First Search, Depth First
Search, Spanning Trees, Shortest path, Minimal spanning tree)
UNIT-IV
[12 Hours]
HASHING AND FILE STRUCTURES:
Hashing: The symbol table, Hashing Functions, Collision-Resolution Techniques, File Structure:
Concepts of fields, records and files, Sequential, Indexed and Relative/Random File
Organization, Indexing structure for index files, hashing for direct files, Multi-Key file
organization and access methods
Course Outcomes:
1. Explain the significance of arrays, stacks, queues, linked lists, trees, heaps, graphs and
Hash Tables are represented in the main memory and manipulated or used by different
operations
2. Construct algorithms for performing operations on a datastructure, with an understanding
of the trade-off between the time and space complexity.
3. Compare alternate implementations of an Abstract Data Type withrespect to their
performance.
4. Illustrate various concepts like arrays, stacks, queues, linked lists, trees, heaps,Graphs and
Hash Tables are used in various applications.
5. Analyze the computational efficiency of key searching, sorting and hashing algorithms
6. Choose appropriate data structures to solve realworld problems efficiently.
Text Books:
1. An Introduction to Data Structures with Applications. by Jean-Paul Tremblay & Paul G.
Sorenson Publisher-Tata McGraw Hill.
Reference Books:
1. Data Structures using C & C++ -By Ten Baum Publisher Prentice-Hall International.
2. Fundamentals of Data Structures in C++-By Sartaj Sahani.
3. Classical Data Structure by D. Samantha. Pearson publication
Web Resources:
1. https://nptel.ac.in/courses/106102064/
2. https://www.edx.org/course/algorithms-and-data-structures-3
LIST OF EXPERIMENTS
1.7 Write a program to implement following operations of the singly Linked list
linked list (SLL). concept
2.3. Write a program to implement following operations of the doubly Linked list
linked list (DLL). Implementation