All Computer/IT related notes with Syllabus...

Call Me: +9779812837886,+9779847871010

Pages

Data Structure & Algorithm


Data Structures and Algorithm
EG 2105 CT

Total:   7 hour /week
Year: II     
Lecture:   3 hours/week 
Semester: III
Tutorial: 1 hours/week
             
Practical:  3 hours/week
Course Introduction

The purpose of this course is to provide the students with the basic concepts of data structures and algorithms. The main objective of the course is to teach the students how to select and design data structures and algorithms that are appropriate for problems that might occur. This course offers the students a mixture of theoretical knowledge and practical experience. Programming language C can be used for practical work.

Objectives   

On completion of this course the students will be enabled to:
       Introduce data abstraction and data representation in memory
       Discuss, design and use elementary data structures such as stack, queue, linked list, tree and graph.
       Decompose complex programming problems into manageable sub-problems Introduce theory of algorithms and their complexity
Course Contents

Units
Topics
Contents
Hours
Methods/ Media
Marks
1
Introduction to Data
Structures and
Algorithms
1.1 Data Structures: Definition and Types
1.2 Abstract Date Type
1.3 Dynamic Memory: malloc,
calloc, realloc and free
1.4 Introduction to Algorithms: Definition and properties of algorithms
1.5 Asymptotic Notations: Big-
O, Big-Ω and Big-θ
(5)       
  

2
Stacks
2.1 Definition, Stack as ADT
2.2 Stack Operations: Concept and Algorithms
2.3 Stack Applications
(5)


3
Queues
3.1 Definition, Queue as ADT
3.2 Queue Operations: Concept and Algorithms
3.3 Queue Applications
3.4 Linear vs Circular Queue 3.5 Circular Queue Operations:
Concept and Algorithms
(6)



Units
Topics
Contents
Hours
Methods/ Media
Marks


3.6 Concept of Priority queue.




4
Recursion                    

4.1 Definition, Recursion vs Iteration
4.3 Factorial, Fibonacci sequence, and TOH
4.4 Applications and Efficiency of recursion
(4)



5
Linked lists                 
 5.1 Definition, Linked List as
ADT
5.2 Types of Linked List
5.3 Basic operations in Singly Linked List: creation, node insertion and deletion from beginning, end, and specified position
5.4 Linked List Implementation of Stack and Queue
5.5 Concept of other types of Linked Lists
5.6 Applications of Linked List
(8)


6
Trees                              
6.1 Concept and Definition: Concept of level, depth, number of nodes
6.2 Binary Tree and Binary Search Tree
6.3 Insertion, Deletion, and Traversal of BST
6.4 Applications of Tree,
Concept of Balanced Trees
(5)


7
Graphs                          
 7.1 Representation and
Applications of Graph
7.2 Graph Traversal Algorithms:
Depth First Traversal and
Breadth First Traversal
7.3 Minimum Spanning Trees: Kruskal’s Algorithms
(5)


8
Sorting and
Searching                    

8.1 Concept of Sorting and
          Searching
8.2 Comparison Sorting: Bubble, Selection, and Insertion Sort and their complexity
(7)


Units
Topics
Contents
Hours
Methods/ Media
Marks


8.3 Divide and Conquer Sorting: Merge, and Quick Sort and their Complexity
8.4 Searching Algorithms: Sequential, and Binary
Search
8.5 Concept of Hash Data
Structure and Hash Function



Laboratory Work  (45 hrs)
(45 hrs)

-       Write program to implement stack operations 
-       Write program to implement linear queue operations
-       Write program to implement circular queue operations 
-       Write programs to implement recursive algorithms
-       Write programs to implement linked list operations
-       Write programs to implement linked stack and linked queue
-       Write programs to implement Comparison Sorting algorithms
-       Write programs to implement searching algorithms
-       Write programs to implement BST operations
-       Write programs to implement graph operations


Recommended Books
1.    Y Langsam , MJ , Augenstein and A.M , Tanenbaum ( 2007) Data Structures using C and C++ , Prentice Hall India, Second Edition

References
1.  G.W Rowe (2016), Introduction to Data Structure and Algroithms with C and C++ , prentice Hall  India, First Edition 
2.  G. S. Baluja, (2016), Data structure Through C, A Practical Approach, Fourth Edition,
DhanpatRai& Co, Second Edition, 2016






















No comments:

Post a Comment

Clock

Total Pageviews

Popular Posts

Keep Visiting Us For More Latest updates||Thank You||