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

Data Structures and Algorithm

This document outlines the syllabus for a postgraduate diploma course in Data Structures and Algorithms. It covers 6 units including linear and nonlinear data structures, sorting and searching algorithms, greedy algorithms, and dynamic programming. Students will learn to apply appropriate data structures like arrays, stacks, queues, linked lists, trees and graphs to solve problems. They will also learn sorting and searching algorithms and apply graph algorithms to model data science problems. The course aims to help students choose the right data structures and algorithms to design solutions for specific problems.

Uploaded by

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

Data Structures and Algorithm

This document outlines the syllabus for a postgraduate diploma course in Data Structures and Algorithms. It covers 6 units including linear and nonlinear data structures, sorting and searching algorithms, greedy algorithms, and dynamic programming. Students will learn to apply appropriate data structures like arrays, stacks, queues, linked lists, trees and graphs to solve problems. They will also learn sorting and searching algorithms and apply graph algorithms to model data science problems. The course aims to help students choose the right data structures and algorithms to design solutions for specific problems.

Uploaded by

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

GUJARAT TECHNOLOGICAL UNIVERSITY

Syllabus for Post graduate Diploma in Data Science, 1st Semester With effective
Subject Name: Data Structures and Algorithm from academic
Subject Code: 1618001 year 2020-21
Objectives
 To learn about how to choose appropriate data structures, understand the
 ADT/libraries, and use it to design algorithms for a specific problem.
 To understand the necessary mathematical abstraction to solve problems.
 The student should be able to choose appropriate algorithms and use it for a specific
problem.
Unit Topic(s) No. of
No. Hours
1. Introduction to Data Structure 2
Data Management concepts, Data types – primitive and non-primitive,
Performance Analysis and Measurement, Average, best and worst case
analysis, Types of Data Structures- Linear & Non Linear Data Structures
2. Linear Data Structures 14
Array: Representation of arrays, Applications of arrays, sparse matrix and its
representation
Stack: Stack-Definitions & Concepts, Operations on Stacks, Applications of
Stacks, Polish Expression, Reverse Polish Expression, Recursion, Tower of
Hanoi
Queue: Representation of Queue, Operations on Queue, Circular Queue,
Priority Queue, Double Ended Queue, Applications of Queue
Linked List: Singly Linked List, Doubly Linked list, Circular linked list,
Applications of linked list
3. Nonlinear Data Structures 10
Tree-Definitions and Concepts, Representation of binary tree, Binary tree
traversal, Binary search trees, Applications of Trees, AVL trees, 2-3 trees,
Graph-Matrix Representation of Graphs, Graph Traversal Methods, Spanning
Trees, Shortest path, Minimal spanning tree
4. Sorting & Searching 6
Bubble Sort, Selection Sort, Quick Sort, Merge Sort, Sequential Search, Binary
Search
5. Greedy Algorithms 4
General Characteristics of greedy algorithms, Activity selection problem, The
Knapsack Problem, Job Scheduling Problem, Huffman code
6. Dynamic Programming 4
Introduction, The Principle of Optimality, Knapsack problem, All Points
Shortest path, Matrix chain multiplication.

Page no. 1 of 3
GUJARAT TECHNOLOGICAL UNIVERSITY
Syllabus for Post graduate Diploma in Data Science, 1st Semester With effective
Subject Name: Data Structures and Algorithm from academic
Subject Code: 1618001 year 2020-21
Reference Books
1. Fundamentals of Data Structures in C++
by Sartaj Sahani
Galgotia Publications Pvt. Ltd., 2009
2. Introduction to Algorithms
by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein
PHI, Second edition
3. Fundamental of Algorithms
by Gills Brassard, Paul Bratley
PHI
4. Fundamentals of Computer Algorithms
by Horowitz, Sahni
Galgotia Publications Pvt. Ltd., 2001 ed.
5. An Introduction to Data Structures with Applications
by Jean-Paul Tremblay & Paul G.
Sorenson Publisher-Tata McGraw Hill

Outcomes
After completion of this subject, students would be able to:
 Differentiate primitive and non-primitive structures.
 Design and apply appropriate data structures for solving computing problems.
 Apply sorting and searching algorithms to the small and large data sets.
 Explain the major graph algorithms and their analyses. Employ graphs to model
data science problems wherever appropriate.

Suggested list of Practical (at least 10 practical are to be performed by students. These
practical should cover majority of all topics of syllabus.)
This is the suggested list of practical but it may not be limited only to this list.

1. Implement a program for stack that performs following operations using array.
(a) PUSH (b) POP (c) PEEP (d) CHANGE (e) DISPLAY
2. Implement a program to convert infix notation to postfix notation using stack
3. Write a program to implement QUEUE using arrays that performs following

Page no. 2 of 3
GUJARAT TECHNOLOGICAL UNIVERSITY
Syllabus for Post graduate Diploma in Data Science, 1st Semester With effective
Subject Name: Data Structures and Algorithm from academic
Subject Code: 1618001 year 2020-21

operations (a) INSERT (b) DELETE (c) DISPLAY


4. Write a program to implement Circular Queue using arrays that performs following
operations. (a) INSERT (b) DELETE (c) DISPLAY
5. Write a menu driven program to implement following operations on the singly linked
list.
(a) Insert a node at the front of the linked list.
(b) Insert a node at the end of the linked list.
(c) Insert a node such that linked list is in ascending order.(according to info. Field)
(d) Delete a first node of the linked list.
(e) Delete a node before specified position.
(f) Delete a node after specified position.
6. Write a program to implement following operations on the doubly linked list.
(a) Insert a node at the front of the linked list.
(b) Insert a node at the end of the linked list.
(c) Delete a last node of the linked list.
(d) Delete a node before specified position
7. Write a program to implement following operations on the circular linked list.
(a) Insert a node at the end of the linked list.
(b) Insert a node before specified position.
(c) Delete a first node of the linked list.
(d) Delete a node after specified position.
8. Write a program which create binary search tree.
9. Write a program to implement Quick Sort, Merge Sort and Bubble Sort.
10. Write a program to implement binary knapsack problem with greedy and dynamic
programming.
11. Write a program to implement activity selection problem with greedy method.
12. Write a program to implement matrix chain multiplication with dynamic
programming.

Page no. 3 of 3

You might also like