You are on page 1of 11

BTCS-301-18

Data Structure and


Algorithms

Dr. Dinesh Kumar


Associate Professor & Head
Department of Information Technology
DAVIET, Jalandhar
Course Introduction

In this course, we will look at:


 Data structures for efficiently storing, accessing, and modifying
data
 Algorithms for solving problems efficiently
We will see that all data structures have trade-offs
 There is no ultimate data structure...
 The choice depends on our requirements
We will view data structures as
 Mathematical/Logical/Abstract Model
Importance of the Course

 Fundamental subject of Computer Science and IT


 Wide application Areas
 Software Development
 Other Computer Science Subjects
 Placement point of view
Course Objectives

 To introduce the fundamental concept of data


structures and to emphasize the importance of data
structures in developing and implementing efficient
algorithms.
 In addition, another objective of the course is to
understand various operations performed on data
structure and their implementation.
Course Contents

 Module 1: Introduction
Basic Terminologies: Elementary Data Organizations, Data Structure Operations:
insertion, deletion, traversal etc.; Analysis of an Algorithm, Asymptotic Notations,
Time-Space trade off. Searching: Linear Search and Binary Search Techniques and
their complexity analysis.
 Module 2: Stacks and Queues
ADT Stack and its operations: Algorithms and their complexity analysis, Applications
of Stacks: Expression Conversion and evaluation – corresponding algorithms and
complexity analysis. ADT queue, Types of Queue: Simple Queue, Circular Queue,
Priority Queue; Operations on each types of Queues: Algorithms and their analysis.
 Module 3: Linked Lists
Singly linked lists: Representation in memory, Algorithms of several operations:
Traversing, Searching, Insertion into, Deletion from linked list; Linked representation
of Stack and Queue, Header nodes, Doubly linked list: operations on it and
algorithmic analysis; Circular Linked Lists: All operations their algorithms and the
complexity analysis.
Course Contents

 Module 4: Trees
Basic Tree Terminologies, Different types of Trees: Binary Tree, Threaded Binary Tree,
Binary Search Tree, AVL Tree; Tree operations on each of the trees and their
algorithms with complexity analysis. Applications of Binary Trees. B Tree, B+ Tree:
definitions, algorithms and analysis.
 Module 5: Sorting and Hashing
Objective and properties of different sorting algorithms: Selection Sort, Bubble Sort,
Insertion Sort, Quick Sort, Merge Sort, Heap Sort; Performance and Comparison
among all the methods, Hashing.
 Module 6: Graph
Basic Terminologies and Representations, Graph search and traversal algorithms
and complexity analysis.
Course Outcomes

The student will be able to:


 CO1: Understand various operations like searching, insertion, deletion,
traversing etc. of various data structures and also understand their
complexities
 CO2: Implement various searching and sorting algorithms and also
understand their applications
 CO3: Solve problems using data structures such as linear lists, stacks,
queues, binary trees, heaps, binary search trees, and graphs and writing
programs for these solutions.
 CO4: Choose the appropriate data structure and algorithm design method
for a specified application.
 CO5: Demonstrate the reusability of data structures for implementing
complex iterative problems.
Mapping of Syllabus with COs

Unit No. CO 1 CO 2 CO 3 CO 4 CO 5
1 3 1
2 3 2
3 3 2 3
4 3 2 1
5 3 2
6 3 1

1 - Slight(Low) 2 - Moderate(Medium) 3 - Substantiate(High)


Course Structure

 Modules: 6
 Lectures/week: 3
 Assignments: 3 – 4 (may increase)
 Quizzes: Variable
 Mid Semester tests: 2
 Mini Project: Optional
 Attendance Criteria: =>75%
Learning Strategy

 The best way to approach this course would be


PRACTICE
Course Books

T1 Data Structures (Schaum's Outline Series), Seymour Lipschutz,


McGraw Hill Education.
T2 Fundamentals of Data Structures, Illustrated Edition by Ellis
Horowitz, Sartaj Sahni, Computer Science Press.
T3 Data Structures, R S Salaria, Kalyani Publisher

R1 Algorithms, Data Structures, and Problem Solving with C++,


Illustrated Edition by Mark Allen Weiss, Addison-Wesley Publishing
Company.
R2 How to Solve it by Computer, 2nd Impression by R. G. Dromey,
Pearson Education.

You might also like