**Dear Friends,**

**DATA STRUCTURES**, the question may hover in your mind that what is Data Structures? Let me answer this question, Data Structures are the collection of techniques to

**Store, Retrieve, and Update Data.**

The importance of a technique is, if we store data according to some technique than we know the arrangement of data items in storage and we can apply some scheme (Algorithm) to access that data. Following are the techniques (Data Structures)

(1) Array

(2) Linked List

(3) Stack

(4) Queue

(5) Tree

(6) Graph

In **Array**, data are arranged in sequential manner in continuous memory locations, each element is accessed by a unique index number, and indices are stared from 0 or any other number, and are assigned in sequential manner.

In **Linked list**, there is no compulsion for the Operating system to store data elements in continuous memory locations. In it, each data element is stored in a node, a node usually has two parts, first data part and other is link part which stores the address of next element.

**Stack** is a Last in First out data structure, in which last inserted element comes out first. In it, addition of element is called PUSH and deletion of an element is called POP.

**Queue** is a First in First out data structure, in which, the element which was added first comes out first out of the Queue. A Queue has two ends, FRONT and REAR.

**Tree** is a hierarchical data structure, in which elements are arranged in hierarchies (levels), tree has parent child relationship among its elements.

Tree is a special case of a **Graph** data structure, in Graph Cycles are found among elements and there is no hierarchy among elements. Some operations on data structures

(a) Traversing

(b) Insertion

(c ) Deletion

(d) Searching

(e) Sorting

(f) Merging

Each data structure has its own algorithm for implementation of these operations

Following study material for SRM University students

[Updated on October 17, 2017]

**Syllabus of Data Structures (15CS201J)**

**Data Structures (15CS201J) Question Bank for Unit 1, 2, and 3**

**Data Structures (15CS201J) CT1 Solution of Selected Questions**

**Lecture Notes of Data Structures (15CS201J)**

**Unit 1**

(a) **Lecture notes**

(b) **Assignments**

**Unit 2**

(a) **Lecture notes**

(b) **Assignments for 3rd semester section C**

(c) **Assignments for 3rd semester section I**

**Unit 3**

**Unit 4**

(a) **Lecture notes**

(b) **AVL Tree ppt**

(d) **Splay Tree ppt**

**Unit 5**

**(a) Graph Terminology, BFS, and DFS**

**(b) Topological Sort**

**(d) Spanning Tree**

**(e) Dijkstra - Single Source Shortest Path**

**(f) Hashing**

**Lab Practicals**

(a) Practical File Index for Section C

(b) Practical File Index for Section I

(c) Implementation of STACK using Linked List

(d) Implementation of QUEUE using Linked List

(e) Conversion of Infix to Postfix Expression using STACK

(f) Implementation of Two-Way Circular Linked List

(g) Implementation of Binary Search Tree (BST) and it's Traversing