0% found this document useful (0 votes)
21 views9 pages

281623lesson Plan - Data Structures and Algorithms-1718353178640

Uploaded by

Sainikhil Patel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views9 pages

281623lesson Plan - Data Structures and Algorithms-1718353178640

Uploaded by

Sainikhil Patel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Data Structures and Algorithms

Preview | What this Course Aims to Deliver

Subject Name: Data Structures and Algorithms Semester: 3

Session: 2023-2026 Program: BCA

Course Outcomes | What the students will be able to do


after this course

Course Learning Outcomes (CLO’s) Short Description

CLO 1 Explain the basic knowledge of data structure used in Data Structures fundamentals
computer systems
Linear and Non-Linear Data
CLO 2 Define the Linear and Non-Linear Data Structures
Structures

Implement the sorting and searching techniques for Sorting and searching
CLO 3
appropriate real-world problems techniques

CLO 4 Working on real world scenario with the backtracking


Backtracking algorithms
algorithms

CLO 5 Apply the appropriate data structures, algorithms, and Real world application of DSA
realizations to solve simple to complex real-world issues.

Course Objectives
1. To impart the basic concepts of data structures and algorithms
2. To define stacks, queues, lists, trees and graphs.
3. To implement the concepts about searching and sorting techniques.
4. To identify the algorithms and a step by step approach to solving problems.
5. To use algorithms to solve real world problems.
Primary Skills
1. Implementation of Data Structures
2. Algorithm Design Analysis
3. Problem-solving Proficiency
4. Optimization Techniques Mastery
5. Algorithmic Paradigm Understanding

Behavior Outcomes
FUNCTION ATTRIBUTES

Enable students to focus Deep thinking

Cultivate self-awareness Self-knowledge

Build interdisciplinary thinking Holistic learning

Develop people skills Communication

Build ‘doers’ Problem-solving

Legends for Course Outline


Presentations / Activity
Assessment

*Overall lecture delivery contains activity, presentation, and assessment

Class Delivery
10% Recap/Revision 70% Concept Delivery and Hands-on scenario 20% Evaluation
Course Outline
SESSION COURSE OUTLINE

UNIT 1: Fundamentals of Data Structures

● An Overview of Data Structures


● Need of Data Structure
Lecture 1
● Terminologies related to Data Structures
An Overview of Data
● Classification of Data Structure
Structures
● Selecting a data structure
● Data Structure Alignment

Lecture 2
● What Should I Learn First
Data Structure vs
● Application of Data Structure
Algorithms

Lecture 3
Applications of Data ● Application of Data Structure
Structures

● Introduction to Algorithms
● Algorithm design techniques
Lecture 4 ● Recurrences
Basics of Algorithms ● Classification of Algorithms
● Analysis of Algorithms
● Formal and Informal Algorithm Analysis

● Introduction
● Need for Space Complexity.
Lecture 5
● Finding Space complexities
Space &
● Introduction
Time Complexity
● Need for Time Complexity
● How to find Time complexities?

Lecture 6 ● The Notation Big O


Asymptotic Notations, ● The Notation Big Omega (Ω)
Average, Best, and ● The Notation Big Theta (Θ)
Worst Case Complexity ● Finding Average case complexities of Algorithms
● Finding Best case complexities of Algorithms
● Finding Worst case complexities of Algorithms
Lecture 7
● Subjective Assessment
Assessment I

Lecture 8
● Subjective Assessment
Assessment II

Lecture 9 ● Quiz
Assessment III ● AMA-Doubt Clearing Session

Unit 2: Linear Data Structure

● Basics of Arrays
Lecture 10
● Types of Array
Arrays
● Can we dynamically allocate array?

● Analyzing String as an Abstract Data Type


Lecture 11
● How is String represented in Memory?
Strings Overview and
● Implementing String in Java
Representation
● String as a Dynamic Data Type

Lecture 12
● Implementing String in Java
Implementation and
● String as a Dynamic Data Type
Properties of Strings

Lecture 13
● Subjective Assessment
Assessment I

Lecture 14
● Subjective Assessment
Assessment II

Lecture 15 ● Quiz
Assessment III ● AMA-Doubt Clearing Session

Unit 3: Advanced Linear Data Structures & Operations

● What are stacks?


Lecture 16
● Concepts related to stacks.
Stacks
● How to perform basic operations on stacks?
● Defining Queue.
Lecture 17 ● Concepts of queues
Queues ● What are different types of queues?
● How to perform operations on queues?

Lecture 18
● How to evaluate an expression?
Applications of Stacks
● How to convert infix, postfix, and prefix with one another?
and Queues

Lecture 19 ● What is a List?


Lists ● Defining Linked Lists.

Lecture 20
● Types of Linked Lists
Types of Linked Lists

Lecture 21
Representation of ● Can we use Linked List to represent a Stack?
Stacks, Queues using ● What are Dynamically Linked Stacks?
Linked Lists

Lecture 22
Representation of ● Can we use Linked List to represent a Queue?
Stacks, Queues using ● What are Dynamically Linked Queues?
Linked Lists

Lecture 23
Applications of Linked ● How are linked lists different from Arrays and Dynamic Arrays?
Lists

Lecture 24
● Subjective Assessment
Assessment I

Lecture 25
● Subjective Assessment
Assessment II

Lecture 26 ● Quiz
Assessment III ● AMA-Doubt Clearing Session
Unit 4: Non-Linear Data Structures

● What are Non-Linear Data Structures?


● Difference between Linear and Non-Linear Data Structures
Lecture 27 ● Basic understanding of Tree Terminologies
Trees ● How do we represent Trees?
● Is a Tree an Abstract Data Type?
● Applications of Trees

● What are Generic Trees?


Lecture 28
● What are Binary Trees?
Generic and Binary
● Difference between Generic and Binary Trees
Trees
● Traversing the Binary Tree.

Lecture 29 ● Understanding BST.


Binary Search Tree ● Binary Tree vs Binary Search Tree
(BST) ● Finding the height of a BST.

Lecture 30
Operations in Binary ● How to perform insert and delete operations in BST
Search Tree (BST)

● Defining Graph
Lecture 31
● How to represent a graph?
Graphs
● What are Paths and Cycles?

Lecture 32
● Understanding Graph Traversal
Graph Traversal

Lecture 33
Minimum Spanning
● How to find Minimum Spanning Trees?
Trees and
● How to find the Shortest Path?
Single-Source Shortest
Paths

Lecture 34
● Subjective Assessment
Assessment I

Lecture 35
● Subjective Assessment
Assessment II

Lecture 36 ● Quiz
Assessment III ● AMA-Doubt Clearing Session
Unit 5: Searching and Sorting Techniques

● Basic Idea behind searching


Lecture 37
● What is Unordered Linear search?
Search-I
● How does a Sorted Linear Search work?

● Understanding Binary Search


Lecture 38 ● Recursion-Meaning
Search-II ● Binary Search with Recursion
● Applications of Binary Search

● What does sorting mean?


Lecture 39 ● Bubble sort
Sorting Techniques-I ● Insertion sort
● Selection sort

Lecture 40 ● Shell Sort


Sorting Techniques-II ● Counting Sort

● Quick sort
Lecture 41
● Merge sort
Sorting Techniques-III
● Heap Sort

Lecture 42 ● Radix sort


Sorting Techniques-IV ● Tree sort

Lecture 43
● Subjective Assessment
Assessment I

Lecture 44
● Subjective Assessment
Assessment II

Lecture 45 ● Quiz
Assessment III ● AMA-Doubt Clearing Session

**Relevant activities, case studies, and real-life examples will be delivered by the faculty in the sessions
where required.
References:

● Text Books:
○ "Data Structures and Algorithms in Java" by Michael T. Goodrich, Roberto Tamassia, and
Michael H. Goldwasser, 6th Edition, 2014.
○ "Java Software Structures: Designing and Using Data Structures" by John Lewis and
Joseph Chase, 4th Edition, 2014.
○ "Data Structures and Algorithm Analysis in Java" by Mark Allen Weiss, 3rd Edition, 2011.

● Reference Books:
○ "Introduction to Algorithms" by Thomas H. Cormen, Charles E. Leiserson, Ronald L.
Rivest, and Clifford Stein, 3rd Edition,2009.
○ "Algorithms" by Robert Sedgewick and Kevin Wayne, 4th Edition, 2011.
○ "Java Performance: The Definitive Guide" by Scott Oaks,1st Edition, 2014.

Mapping of Course Learning Outcomes with Program Learning Outcomes

Program Specific
Program Learning Outcomes
Outcomes

Course Learning
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PSO1 PSO2 PSO3
Outcomes (CLOs)

CO1 1 2 2 3 1

CO2 1 2 2 3 1

CO3 1 2 2 2 3 1

CO4 2 3 3 2 3 3 3 3

CO5 2 3 3 2 3 2 2 3 1

1: Objective addressed slightly 2: Objective addressed moderately 3: Objective addressed substantive

You might also like