Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Course Plan: For Data Structure Fundamentals (Ecse281M)

Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

COURSE PLAN

For
DATA STRUCTURE FUNDAMENTALS (ECSE281M)

Faculty Name : Dr. Shivani Goel

Course Type : Minor

Semester and Year: III Semester and II Year

L-T-P : 4-0-0

Credits :4

Department : Computer Science Engineering

Course Level : UG

SCHOOL OF ENGINEERING AND APPLIED SCIENCES

Department of Computer Science Engineering

Bennett University
Greater Noida, Uttar Pradesh
COURSE CONTEXT
SCHOOL SEAS VERSION NO. OF Version 2
CURRICULUM/SYLLABUS
THAT THIS COURSE IS A
PART OF
DEPARTMENT CSE DATE THIS COURSE Jul-Dec, 2020
WILL BE EFFECTIVE
FROM
DEGREE B. Tech. VERSION NUMBER OF Version 1
THIS COURSE

COURSE BRIEF
COURSE TITLE Data Structure PRE-REQUISITES NA
Fundamentals
COURSE CODE ECSE281M TOTAL CREDITS 4
COURSE TYPE Minor L-T-P FORMAT 4-0-0

COURSE SUMMARY
The course is intended to familiarize the students with the basic concepts of data structures. It
will also enable the students to master the implementations of basic data structures and
familiarize them with advanced data structures.

COURSE-SPECIFIC LEARNING OUTCOMES (CO)


By the end of this program, students should have the following knowledge, skills and values:
CO1: Students develop knowledge of basic data structures for storage and retrieval of ordered or
unordered data. Data structures include arrays, linked lists, binary trees, heaps.

CO2: Students develop knowledge of applications of data structures including the ability to
implement algorithms for the creation, insertion, deletion, searching, and sorting of each data
structure.

CO3: Students learn the concepts of graphs and trees. Students implement projects requiring
the implementation of the above-mentioned data structures.

How are the above COs aligned with the Program-Specific Objectives (POs) of the degree?
___________________________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
Detailed Syllabus
Module 1 (Contact hours: 15)

Introduction to Data structures (What, Why and Where). Introduction to linked lists, arrays,
stacks, queues, priority queues, etc. Introduction to dynamic programming.

Module 2 (Contact hours: 15)

Greedy algorithms: Fractional knapsack problem, Minimum Spanning Trees – Prim’s and
Kruskal’s algorithm. Dijkstra’s shortest path algorithm. Introduction to Heap. Huffman
coding (use of priority queue). Divide and conquer method: Merge sort, binary search,
matrix multiplication.

Module 3 (Contact hours: 15)

Trees: Binary search trees (insertion, deletion, search, etc.), Balanced Trees: Introduction to
AVL tree, traversal, insertion and deletion in AVL tree.

Module 4 (Contact hours: 11)

Graphs: Introduction to graphs, graph traversal algorithms (BFS and DFS). Dynamic
Programming: Matrix chain multiplication and Longest Common Subsequence.

TEXTBOOKS/LEARNING RESOURCES:

a) Tenenbaum and Aaron M., Data structures using C. (1st Edition), Pearson
Education India, 1990.ISBN 978-8131702291.

REFERENCE BOOKS/LEARNING RESOURCES:

a) Cormen, Leiserson, Rivest, and Stein, Introduction to Algorithms (3rd Edition),


MIT Press, 2009. ISBN 978-0262033848

EVALUATION POLICY

Components of Course Evaluation Percentage


Mid Term Examination 30
End Term Examination 40
Assignment-01 10
Assignment-02 10
Quiz-01 5
Quiz-02 5
Lecture Wise Plan:

Lecture No. Content Planned


1 Introduction to Data structures (What, Why and Where)
2 Creating a linked list, Insertion in a linked list
3 Applications of various linked lists
4 Deleting from a linked list
5 Creating and inserting in a circular linked list
6 Deleting from a circular linked list
7 Creating and inserting in a doubly linked list
8 Deleting from a doubly linked list
9 Creation and insertion in arrays of different types
10 Deletion from an array
11 Quiz 1
12 Applications of stack in real life (Self study- Assignment 1)
13 Creation of a stack and insertion in stack
14 Deleting elements from stack
15 Applications of queue in real life
16 Creating and inserting in a queue
17 Deleting elements from a queue
18 Introduction to Heap and its use in real life
19 Creating a priority queue
20 Deleting elements from priority queue
21 Introduction to dynamic programming
22 Greedy algorithms : Fractional knapsack problem
23 Graphs: Introduction to graphs
24 Properties of graphs
25 Quiz 2
26 Graph traversal algorithms -BFS
27 Graph traversal algorithms -BFS Applications
28 Graph traversal algorithms -DFS
29 Graph traversal algorithms -DFS Applications
30 Minimum Spanning Trees applications
31 Prim’s algorithm
32 Kruskal’s algorithm
33 Dijkstra’s shortest path algorithm
34 Quiz 3
35 Huffman coding (use of priority queue)
36 Divide and conquer method: Merge sort
37 Linear and binary search
38 Matrix multiplication
39 Matrix multiplication
40 Longest Common Subsequence.
41 Introduction to Trees
42 Applications of Trees (Assignment 2)
43 Various types of Trees
44 Binary search trees insertion
45 Binary search trees deletion
46 Searching in a Binary search tree
47 Introduction to Balanced Trees
48 Introduction to AVL trees
49 Introduction to AVL trees
50 Traversal in AVL tree
51 Traversal in AVL tree
52 Insertion in AVL tree.
53 Insertion in AVL tree.
54 Deletion from AVL tree
55 Deletion from AVL tree
56 Review of data structures

You might also like