0% found this document useful (0 votes)
53 views

Fall 2023, DSA Outline

The course outline describes a 3+1 credit hour course on Data Structures and Algorithms that will cover fundamental data structures like arrays, linked lists, stacks, queues, and trees as well as algorithms for searching, sorting and analyzing complexity. Students will implement various data structures and design new ones, and the course will assess students with assignments, quizzes, midterm and final exams to evaluate their understanding of concepts and ability to apply knowledge to problems.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
53 views

Fall 2023, DSA Outline

The course outline describes a 3+1 credit hour course on Data Structures and Algorithms that will cover fundamental data structures like arrays, linked lists, stacks, queues, and trees as well as algorithms for searching, sorting and analyzing complexity. Students will implement various data structures and design new ones, and the course will assess students with assignments, quizzes, midterm and final exams to evaluate their understanding of concepts and ability to apply knowledge to problems.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 5

National Computing Education Accreditation Council

NCEAC

NCEAC.FORM.
COURSE OUTLINE
INSTITUTION University of Management & Technology, Lahore
PROGRAM (S) TO BE BS Computer Science
EVALUATED
Course Description:
Course Code CC2042
Course Title Data Structures and Algorithms
Credit Hours 3+1
Prerequisites by Data Structures & Algorithms
Course(s) and
Topics
Assessment Class Participation 5%
Instruments with Quizzes 10%
Weights Assignments 10%
(homework,
Project 10%
quizzes, midterms,
final, programming Mid Term 25%
assignments, lab Final Term 40%
work, etc.)
Course Moderator Dr Umer Suleman
URL (if any)
Textbook (or
Laboratory Manual 1. Book Name: Data Structures Using C++, 2nd Edition By Author :D. S. Malik,
for Laboratory 2010.
Courses) 2. Book Name : Data Structures and Algorithms in C++, 2nd Edition By
Author: Micheal T. Goodrich, Roberto Tamassia and David MountJohn
Wiley and Sons, Inc, 2011.
3. Book Name: Algorithms, 4th Edition by Author: Robert Sedgewick, Kevin
Wayne, 2011

Reference Material Book Name : Introduction to Algorithms, 3rd Edition, By Thomas H


Cormen, Charles E Leiserson, Ronald L Rivest, Clifford Stein MIT Press
Available in Library, 2009.
2. Book Name : Classic Data Structures, 2nd Edition By Samanta Debasis,
Available in Library, 2016.
3. Data Structures and Algorithms Analysis in C++, 2nd Edition By Clifford A
Sheffard, 2003

Course Upon successful completion of the course, a student should be able to:
Goals/Objectives
 Understand the design of fundamental data structures as well as algorithms that
operate on them.
 Analysis of Wide Range of Data Structures Available
 Comparison of Data Structures Based on their Analysis
 Implementing new Data Structures for the real time & industrial needs.

 Provide rigorous ‘hands-on’ experience with implementing different data structures

1
National Computing Education Accreditation Council
NCEAC

NCEAC.FORM.
in a programming language

Course Learning Outcomes (CLOs):

Domain & BT
CLOs Description
Level *
Implement various data structures and their
CLO 1 algorithms and apply them in implementing C 2, 3
simple applications.
Analyze simple algorithms and determine their
CLO 2
complexities.
C 4, 5
Apply the knowledge of data structures to
CLO 3
other application domains.
C3
Design new data structures and algorithms to
CLO 4
solve problems.
C6
* BT= Bloom’s Taxonomy, C=Cognitive domain, P=Psychomotor domain, A= Affective domain

Mapping of CLOs to Program Learning Outcomes (PLOs):

CLOs/PLOs CLO 1 CLO 2 CLO 3 CLO 4


PLO 1: Academic Education

PLO 2: Knowledge for Solving Computing


Problems
PLO 3: Problem Analysis
PLO 4: Design and Development of Solutions

PLO 5: Modern Tool Usage

PLO 6: Individual and Teamwork

PLO 7: Communication

PLO 8: Computing Professionalism and Society

2
National Computing Education Accreditation Council
NCEAC

NCEAC.FORM.
PLO 9: Ethics

PLO 10: Life Long Learning

Evaluation
Date Duration Topics Covered Instruments CLOs
used
Introduction of Data Structures and Algorithm, Course
1 Evaluation Scheme, Evaluation Instruments for DSA 1
(with justification), OOP Concepts,
Memory Organization, Pointers, Pointer Arithmetic, Void
Pointer, Pointer to a pointer, Dangling Pointers, Dynamic
2 1
Memory Allocation, Memory Allocation/De-allocation,
Memory Leakage
Basics, Efficiency of an algorithm, Time Complexity vs.
Space Complexity, Calculating Time Complexity (Linear
3 1
Statements, Conditional Statements, Loop Structures),
Examples & Exercises
Arrays, Static Array, Dynamic Arrays, Array Memory
concepts, 1D, 2D and multidimensional arrays, Array
4 Quiz 1 1
Storage into Memory, Row-First Order vs. Column-First
Order in arrays
Pros and Cons, Array Initialization, Array Operations
(Traversal, Insertion, Deletion, Updating, Searching),
5 2
Array Bounds (C++), Character Arrays, Array Name and
Pointer
Linear Search vs. Binary Search, Sorting Algorithms
6 2
(Slow Sorts), Complexity Analysis.
7 Recursive Array Sorting (Merge Sort / Quick Sort) 1
Linked Lists Introduction, List Operations (Traversal,
8 Insertion, Deletion), Node and Node Pointers, List ADT, Assignment 1 1
List Implementation (Single List)
Double Linked List Operations, DList ADT, DList
9 2
Implementation, discussion
Quiz 2
10 2
Other Variants of Lists, Circular Lists, Double Circular
Lists, Custom Operations on the Lists
11 1
Stack, Basics, Its Usage, Stack ADT, Stack Operations,
12 Implementation of Stack (Array), Stacks & Function Assignment 2
Calls
List based Implementation of Stack, Applications of
13 2
Stacks
14 Queue, Introduction, Operations, ADT, Implementation Quiz 3 1
15 of Queue with variations (Circular Queue, Priority 2

3
National Computing Education Accreditation Council
NCEAC

NCEAC.FORM.
Queue), Applications of Queues,
16 Mid Term Exam
Introduction to Trees Concepts & Terminologies, Binary
Trees, Expression Trees, Binary Search Trees, BST
17 -
Property, BST Operations (Traversal, Insertion, 2
18
Searching), BST Storage into an Array, Locating (Parent
of a node, Direct children of a node)
BST Implementation (Pointers Based), Tree Population 2
19 - (Inserting Nodes into a BST), Tree Traversals (Infix,
20 Prefix, Postfix, Level-order), Deleting / Updating BST Assignment 03 3
Nodes, Discussions
Balanced Binary Trees, Purpose, AVL Tree, Balancing
21 Quiz 03 3
Factor and Rotations
Heap, Max Heap, Min Heap, Operations (Insertion,
22 2
Deletion, Searching, Traversal), Heap Applications
Hashing, Hash Functions, Collision Resolution
23 Assignment 04 3
Techniques (Chaining, Open Addressing, Re Hashing)
24 Revisiting Recursive Algorithms, Analyzing Recursive 3
Algorithms (Master Method, Substitution Method,
25 3
Recursion Tree)
Arithmetic Expressions, Infix to Postfix Conversion,
26 Quiz 04 2
Evaluating Postfix, Infix to Prefix Conversion
Graph, Graph Data Structure, Graph Applications,
27 Terminologies, Presenting a Graph (Adjacency Matrix, Assignment 05 2
Adjacency List)
Graph Traversals (Breadth First Traversal, Depth First
28 2
Traversal)
Minimum Spanning Trees, Topological Sort Example of
29 Quiz 05 3
Kruskal Algorithm And their Algorithmic Analysis
30 Graph and Shortest Path Problems 3
31 Revision 3
32 Final Term Exam

Laboratory Assignments
Projects/Experiments Done
in the Course
Programming Assignments 2-4 programming assignment
Done in the Course
Class Time Spent on (in 3 hours per week
credit hours)
Oral and Written
Communications

*-Tentative Mapping of CLOs to Direct Assessments


CLO Quiz-1 Quiz-2 Quiz-3 Quiz-4 Assign1 Assign2 Assign3 Assign4 Mid Final

4
National Computing Education Accreditation Council
NCEAC

NCEAC.FORM.
2
3

Instructor Name: Shahbaz Qadeer

Instructor Signature ____________________________

You might also like