0% found this document useful (0 votes)
9 views5 pages

Data Structures Lab Teaching Plan

The document outlines a sixteen-week teaching plan for the Data Structures-Lab course (COSC-2201) in the Computer Science program. It details weekly objectives, learning outcomes, and contents covering various data structures, algorithms, and their complexities, including arrays, linked lists, stacks, queues, trees, and graphs. The plan also includes project discussions and evaluations, ensuring students apply their knowledge in practical applications.
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)
9 views5 pages

Data Structures Lab Teaching Plan

The document outlines a sixteen-week teaching plan for the Data Structures-Lab course (COSC-2201) in the Computer Science program. It details weekly objectives, learning outcomes, and contents covering various data structures, algorithms, and their complexities, including arrays, linked lists, stacks, queues, trees, and graphs. The plan also includes project discussions and evaluations, ensuring students apply their knowledge in practical applications.
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

Sixteen Week Teaching Plan

Course Title & Course Code Data Structures-Lab / COSC-2201


Credit Hours 01
Pre-Requisite(s), if any
Department / Institute Computer Science
Faculty Information Technology
Program/semester/section BS-Computer Science
BOS Meeting # and Date 9th BOS Meeting, 08-Aug-2023

Week 1
Objectives / Learning Outcome 6. Apply the knowledge of data structure to other application
domains.
Contents / Sub Contents Arrays, Functions and Pointers
 Array creation and implementation
 Array passing to function
 Function creation and implementation
 Pointers basic concepts
Week 2
Objectives / Learning Outcome 3. Apply the knowledge of data structure to other application
domains.
4. Analyze simple algorithms and determine their
complexities.
Contents / Sub Contents Complexity Analysis
 Asymptotic notations
 Types of complexities (Best, Average, Worst cases)
 Big oh
 Big omega
 Big theta
 Complexity analysis of code snippets
 Algorithm comparison
Week 3
Objectives / Learning Outcome 4. Implement various data structures and their algorithms and
apply them in implementing simple applications
5. Apply the knowledge of data structure to other application
domains.
6. Analyze simple algorithms and determine their
complexities.
Contents / Sub Contents Searching & Sorting in Arrays
 Linear search
 Binary search
 Selection sort
 Insertion sort
 Bubble sort
 Quick sort
 Merge sort
 Comparison using asymptotic notations
Week 4
Objectives / Learning Outcome 4. Implement various data structures and their algorithms and
apply them in implementing simple applications
5. Analyze simple algorithms and determine their
complexities.
6. Design new data structures and algorithms to solve
problems.
Contents / Sub Contents Linked Lists
 Introduction
 Types of Linked Lists (Singly, Doubly, Circular)
 Algorithms (Searching, sorting, insertion, deletion)
 Comparison
Week 5
Objectives / Learning Outcome 3. Implement various data structures and their algorithms and
apply them in implementing simple applications
4. Apply the knowledge of data structure to other application
domains.
Contents / Sub Contents Stacks
 Basics of Stack data structure
 Algorithms (Push, Pop, Peek)
 Implementation using Arrays
 Implementation using Linked Lists
 Expression parsing using Stacks (infix, prefix, postfix)
Week 6
Objectives / Learning Outcome 4. Implement various data structures and their algorithms and
apply them in implementing simple applications
5. Apply the knowledge of data structure to other application
domains.
6. Design new data structures and algorithms to solve
problems.
Contents / Sub Contents Queues
 Basics of Queues
 Types of Queues (Circular buffer, Double ended,
Priority)
 Algorithm of Queues (Search, Sort, Enqueue, Dequeue)
 Queue implementation using Arrays
 Queue implementation using Linked Lists
Week 7
Objectives / Learning Outcome 3. Implement various data structures and their algorithms and
apply them in implementing simple applications
4. Apply the knowledge of data structure to other application
domains.
Contents / Sub Contents Hashing
 Basics of Hashing
 Components of Hashing
 Hash functions
 Problems with hashing (Collision)
 Load factor
 Applications of hashing
Week 8
Objectives / Learning Outcome 3. Implement various data structures and their algorithms and
apply them in implementing simple applications
4. Apply the knowledge of data structure to other application
domains.
Contents / Sub Contents Project Discussion Week, Quiz
Week 9
Objectives / Learning Outcome 3. Implement various data structures and their algorithms and
apply them in implementing simple applications
4. Apply the knowledge of data structure to other application
domains.
Contents / Sub Contents Recursion
 Introduction
 Properties
 Implementation
 Analysis of recursion
 Time complexity
 Space complexity
 Fibonacci series
 Tower of Hanoi problem

Week 10
Objectives / Learning Outcome 3. Implement various data structures and their algorithms and
apply them in implementing simple applications
4. Apply the knowledge of data structure to other application
domains.
Contents / Sub Contents Tree Data Structure
 Basics of Tree data structure
 Types of Trees
 Propertise of trees
 Tree terminology
 Basic Algorithms
 Application of Trees
Week 11
Objectives / Learning Outcome 3. Implement various data structures and their algorithms and
apply them in implementing simple applications
4. Apply the knowledge of data structure to other application
domains.
Contents / Sub Contents Tree Traversal
 Introduction
 Types
 Inorder
 Preorder
 Postorder
 Algorithm & Implementation
Week 12
Objectives / Learning Outcome 3. Implement various data structures and their algorithms and
apply them in implementing simple applications
4. Apply the knowledge of data structure to other application
domains.

Contents / Sub Contents Binary Search Trees


 Basics
 Representation
 Implementation & Algorithms
 Traversals in BSTs
 Applications of BSTs
 Expression Trees
Week 13
Objectives / Learning Outcome 4. Implement various data structures and their algorithms and
apply them in implementing simple applications
5. Apply the knowledge of data structure to other application
domains.
6. Analyze simple algorithms and determine their complexities.
Contents / Sub Contents Tree Balancing
 AVL trees
 Red Black trees
 Algorithm & implementation
 Complexity analysis
Week 14
Objectives / Learning Outcome 4. Implement various data structures and their algorithms and
apply them in implementing simple applications
5. Apply the knowledge of data structure to other application
domains.
6. Analyze simple algorithms and determine their complexities.
Contents / Sub Contents Heap
 Basics
 Min Heap
 Max Heap
 Algorithms & Implementations
 Complexity analysis
Week 15
Objectives / Learning Outcome 4. Implement various data structures and their algorithms and
apply them in implementing simple applications
5. Apply the knowledge of data structure to other application
domains.
6. Analyze simple algorithms and determine their complexities.
Contents / Sub Contents Graphs
 Basics
 Graph Terminology
 Adjacency matrix
 Graph traversals/searches
 Breadth first search
 Depth first search
 Shortest path first
 Topological Order

Algorithms & implementation

Complexity analysis
Week 16
Objectives / Learning Outcome 2. Implement various data structures and their algorithms and
apply them in implementing simple applications
Contents / Sub Contents Project Evaluation

Curriculum Contents: Abstract data types, complexity analysis, Big Oh notation, Stacks (linked lists and
array implementations), Recursion and analyzing recursive algorithms, divide and conquer algorithms, Sorting
algorithms (selection, insertion, merge, quick, bubble, heap, shell, radix, bucket), stacks, expression parsing
using stacks, queue, dequeue, priority queues (linked and array implementations of queues), linked list & its
various types, sorted linked list, searching an unsorted array, binary search for sorted arrays, hashing and
indexing, open addressing and chaining, trees and tree traversals, expression trees, binary search trees, heaps,
M-way tress, balanced trees (AVL, Red Black), graphs, breadth-first and depth-first traversal, topological
order, shortest path, adjacency matrix and adjacency list implementations.

You might also like