0% found this document useful (0 votes)
2 views

DataStructuresSyllabus

The Data Structures and Algorithms course includes 3 hours of lectures and 2 hours of laboratory work, offering 4 credits. The syllabus covers both linear and non-linear data structures, their manipulation, and various algorithms for sorting and searching, along with space and time complexity analysis. Laboratory work involves implementing stack, queue, linked list operations, searching and sorting algorithms, and graph traversal techniques, with course evaluation based on quizzes, mid-exams, lab evaluations, and an end exam.

Uploaded by

akyadav123
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

DataStructuresSyllabus

The Data Structures and Algorithms course includes 3 hours of lectures and 2 hours of laboratory work, offering 4 credits. The syllabus covers both linear and non-linear data structures, their manipulation, and various algorithms for sorting and searching, along with space and time complexity analysis. Laboratory work involves implementing stack, queue, linked list operations, searching and sorting algorithms, and graph traversal techniques, with course evaluation based on quizzes, mid-exams, lab evaluations, and an end exam.

Uploaded by

akyadav123
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

Course Name: Data Structures and Algorithms

Scheme: 3 Hrs Lectures, 2 Hrs Laboratory (3 – 0 – 2)

Credits: 4

Syllabus:
• Introduction to Data Structure: abstract data types, Types of Data Structures: Linear & Non
Linear Data Structures.
• Creation and manipulation of linear data structures such as arrays, stack, queue, linked list,
implementation of linear data structures and their applications
• Creation and manipulation of non-linear data structures such as trees, heaps, balanced trees,
graphs; implementation of non-linear data structures and their applications
• Algorithms for sorting, searching, graph traversals, minimum spanning tree, shortest path,
space and time complexity analysis

Books:
1. Introduction to Algorithms , Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest
and Clifford Stein , PHI
2. Fundamentals of Algorithmics, Gilles Brassard and Paul bratley, PHI
3. Data Structures and Algorithms in Python, Goldwasser, Tamassia and Goodrich, Wiley
4. An Introduction to Data Structures with Applications , Jean-Paul Tremblay & Paul G.
Sorenson, Tata McGraw Hill

Laboratory:
1. Lab 1 Stack and Queue
a) Implement the following stack operations: push , pop, read, and change.
b) Implement a converter that takes an infix-expression string and generates the postfix
string as an output
c) Implement a program to evaluate a Postfix expression involving numbers and operators
(e.g. 10 15 + 20 * should result in 500)
d) Implement the insert and delete operations for a First-in-First-out queue and a Circular
queue
e) Implement a queuing program that supports three levels of priority (0- Highest, 1, and
2). An element with higher priority should be processed (removed) before the lower
priority ones. Comment about the fairness in this basic implementation.
2. Lab 2 Linked List
a) Implement the Singly linked list, circular linked list and doubly linked list with the
following operations:
1. Insert at the head (front), insert at the tail (end), insert in an ordered list, insert
before/after a node with value v;
2. Delete from head (front) , delete from the tail (end), delete a node with value v
3. Traverse and display the linked list
b) Represent a polynomial of two variables (e.g. x and y) using a linked list. Write
functions to perform the arithmetic operations on two polynomials
3. Lab 3 Searching Sorting and Time Complexity Analysis
a) Implement a linear search program and binary search program to search an element in a
list of n elements. Take a list of n=1000000 elements populated with random elements.
Also record and compare the worst case running time (using time command on terminal)
for each of the algorithms
b) Implement insertion sort and merge sort algorithm to sort a list of n elements in
ascending order. Take a list of n=1000000 elements populated with random elements.
Also record and compare the worst case running time (using time command on terminal)
for each of the algorithms.
4. Lab 4 Trees
a) Implement Binary search tree with Insert, delete, and traverse operations
b) Implement the Heap sort algorithm to sort a list of n numbers
c) Implement the Balanced Binary Search tree (AVL Tree) with Insert, delete, and traverse
operations.
5. Lab 5 Graphs
a) Implement a Graph using Adjacency list and Adjacency matrix representation. Further,
implement the Depth First Search and Breadth First Search Traversal of the graph

Course Evaluation:
• Quiz / class test (20 %),
• Mid exam (20%),
• Lab evaluations (20%)
• End exam (40%)

You might also like