Dsa Syllabus
Dsa Syllabus
SYLLABUS
UNIT-1
Data Structures - Definition, Classification of Data Structures, Operations on Data Structures,
Abstract Data Type (ADT), Preliminaries of algorithms. Time and Space complexity.
Searching - Linear search, Binary search, Fibonacci search.
Sorting- Insertion sort, Selection sort, Exchange (Bubble sort, quick sort), distribution (radix
sort), merging (Merge sort) algorithms.
UNIT -2
Linked List: Introduction, Single linked list, Representation of Linked list in memory,
Operations on Single Linked list-Insertion, Deletion, Search and Traversal ,Reversing Single
Linked list, Applications on Single Linked list, Polynomial Expression Representation, Addition
and Multiplication, Sparse Matrix Representation using Linked List, Advantages and
Disadvantages of Single Linked list, Double Linked list-Insertion, Deletion, Circular Linked list-
Insertion, Deletion.
UNIT – 3:
Queues: Introduction to Queues, Representation of Queues-using Arrays and using Linked list,
Implementation of Queues-using Arrays and using Linked list, Application of Queues- Circular
Queues, Deques, Priority Queues, Multiple Queues.
Stacks: Introduction to Stacks, Array Representation of Stacks, Operations on Stacks, Linked list
Representation of Stacks, Operations on Linked Stack, Applications-Reversing list, Factorial
Calculation, Infix to Postfix Conversion, Evaluating Postfix Expressions.
UNIT – 4
Trees: Basic Terminology in Trees, Binary Trees-Properties, Representation of Binary Trees
using Arrays and Linked lists. Binary Search Trees- Basic Concepts, BST Operations: Insertion,
Deletion, Tree Traversals.
UNIT – 5
Graphs: Basic Concepts, Representations of Graphs-Adjacency Matrix and using Linked list,
Graph Traversals (BFT & DFT), Applications- Minimum Spanning Tree Using Prims &
Kruskals Algorithm, Dijkstra’s shortest path
Text(T) / Reference(R) Books:
T1 Data Structures Using C. 2nd Edition.Reema Thareja,Oxford.
T2 Data Structures and algorithm analysis in C, 2nded, Mark AllenWeiss.
R1 Fundamentals of Data Structures in C, 2nd Edition, Horowitz, Sahni, Universities Press.
R2 Data Structures: A PseudoCode Approach, 2/e, Richard F.Gilberg, Behrouz A.
Forouzon,Cengage.
R3 Data Structures with C, Seymour LipschutzTMH
W1 http://algs4.cs.princeton.edu/home/
Data Structures
Definition:
A data structure is basically a group of data elements that are put together under one name, and which
defines a particular way of storing and organizing data in a computer so that it can be used efficiently.
BASIC TERMINOLOGY
Data structures are generally categorized into two classes: primitive and non-primitive data structures.
The primitive data structures are primitive data types. The int, char, float, double, and pointer are the
primitive data structures that can hold a single value.
When one element is connected to the 'n' number of elements known as a non-linear data structure.
The best example is trees and graphs. In this case, the elements are arranged in a random manner.
We will discuss the above data structures in brief in the coming topics. Now, we will see the common
operations that we can perform on these data structures.
o Static data structure: It is a type of data structure where the size is allocated at the compile
time. Therefore, the maximum size is fixed.
o Dynamic data structure: It is a type of data structure where the size is allocated at the run time.
Therefore, the maximum size is flexible.