The Superior University, Lahore
Faculty of Computer Science & Information Technology
Course Outline
Course Course Title Data Structure & Algorithm
Informatio Course ID CPR601130 Course Type Computing Core
n Credit hours 4 Hours per week (C-L) 3+1
Programs BSCB Preferred Semester 3
Date 2024-08-19 Version 2.1
Offered Program(s) Semester Session FALL 2024
Course Instructor(s) TA / Lab Engineer
Informatio QCH Syed Asad Ali Naqvi Telephone No. / Ext.
n Email [Link]@[Link].p Class Hours
k
Office / Room Office Hours
No.
Course This course builds a strong foundation in data structures and algorithms, focusing on problem-solving, efficiency,
Descriptio and algorithm correctness. Students will gain both theoretical knowledge and hands-on experience in:
n
● Data Structures: Arrays, Pointers, Linked Lists, Stacks, Queues, Trees, Graphs
● Algorithms: Sorting, Recursion, Graph Traversal, Hashing
● Optimization & Analysis: Selecting and designing efficient structures and algorithms
Students will be equipped to develop optimized solutions for real-world programming challenges by the end.
Course The objective of this course is to enable students to;
Objectives No Objective
(CO) .
CO To inculcate the knowledge of data structures and algorithms.
1.
CO To apply efficient searching and sorting techniques on Data Structure
2.
CO To design solution for real world problems with the help of data structures.
3.
Course At the end of this course students will be able to;
Learnin No Outcome Domain Taxono PLO #
g . my Level
Outco CL Understand various data structures and algorithms Cogniti 2 1
mes O1. ve
(CLO) CL Examine and choose appropriate data structures and algorithms for Cogniti 4 2
O2. real-world computing problems ve
CL Implement various data structures and algorithms using different Cogniti 3 4
O3. programming languages ve
CL Analyze algorithms and determine associated time complexities Cogniti 4 3
O4. ve
Lecture type Lectures
Prerequisite Object Oriented Programming
s
Follow up Design & Analysis of Algorithm
Courses
Textbook Title Edition Authors Publisher Year ISBN
Data Structures and Algorithm 4th Mark Addison- 2014 978-0-13-284737-7
Analysis, Allen Wesley
Weiss
Refere Data Structures Using C++ 8th D. S. Malik, Cengage 2014 1-133-60842-6
nce Learning
Books
Refere Nell Dale, C++ plus Data Structures, Jones & Bartlet Learning
nce Y. Langsam, M. J. Augenstein, A. M. Tenenbaum, Data Structures Using C and C++, Prentice-Hall
Materi
al
Cours Visual Studio
e
Softw
are
Page 1 of 3
or Tool
Assessmen Assessment Wei Used to attain Assessment Weight Used to attain CLO
t Criteria g CLO
(100%) h
t
Assignment 10% All Quiz 10% All
Lab 0% Project / Presentation 20% All
Attendance 0% Participation 0% All
Mid Term 20% All Final 40% All
Methods Quizzes, Case study / project, Final exam, Lab, Project
of
Evaluati
on
Notes
W Topic Lecture Lecture Contents Relati Lecture Material Class Tasks
ee No. on Activit
k
No with y
. CLO
W L1. ● Module Discussion CLO1 Slides: Lecture 1,2 Lecture Read
1. importance
Introduction
● Introduction to DSA
of DSA
https://
to DSA ● Arrays & Pointers
[Link]/
(Multidimensional Array, Dynamic
Memory Allocation) presentation/d/
1zaBl24AFWBAhNG
● Introduction to Vectors (5-10
ee9_QE_p3DJlEc0-
minutes)
rh/edit?
usp=drive_link&oui
d=10888554447349
1738119&rtpof=tru
e&sd=true
L2. ● Recursion (Examples and CLO1
Implementation)
● examples using function stack
W ● Time /Space Complexity CLO1 Slides: Lecture 3,4 Lecture+A Study arrays
L3. ssignmen and memory
2. Time ● Big O notations https:// t
Comlexity [Link]/
presentation/d/
1GJYdviYyAtYyzDQ
MsYjUOj6k86_Fub-
P/edit?
usp=drive_link&oui
d=10888554447349
1738119&rtpof=tru
e&sd=true
L4. ● Complexity types with examples: CLO1,
CLO4
Constant time, Linear time, logarithmic
time , quadratic time, exponential time,
factorial time
● Analyzing complexity of
algorithms/ code segments
W3 Sorting L5. ● Insertion Sort, Selection Sort, CLO1, Slides: Lecture 5,6 Lecture+ Learn
CLO4 Quiz Bubble,
. Algorithms Bubble Sort, https:// Selection,
[Link]/ Insertion
● Quick Sort presentation/d/
1FRMPgaAAgKqS3x
SxIhEn0P67YH5Rjm
2B/edit?
usp=drive_link&oui
d=10888554447349
1738119&rtpof=tru
e&sd=true
CLO1,
L6.
●
● Merge Sort(Implementations of all CLO4
Algorithms with examples)
W4 CLO1, Lecture Understand
. L7. ● Singly Linked List (Introduction to
CLO2
Slides: Lecture 7,8
linked list
Linklist, Array v/s Linklist) https:// operations
[Link]/
● Implementation of linklist presentation/d/
1tdmUN733n0Me3
Linked List ● Link List Operations(Insertion, TM_yggRdRUkFfeZ7
Search) twQ/edit?
Single
usp=drive_link&oui
d=10888554447349
1738119&rtpof=tru
e&sd=true
● CLO1,
L8. Linklist operations (Deletion)
CLO2
● Applications of Linklist (Dictionary,
Directory)
W ● Introduction to Double Linklist CLO1, Lecture Read circular
Double, Circular
5. L9. Slides: Lecture 9,10
Linked List CLO2 list
● Double Linklist Operations https:// applications
Doubly
(Insertion, Searching, Deletion) [Link]/
presentation/d/
1zsLFTBx6sarTlAvb3
37i3OSpYdkW-
vn4/edit?
usp=drive_link&oui
d=10888554447349
1738119&rtpof=tru
e&sd=true
● Circular Linklist (Implementation CLO1,
L1 with Single LL and Doubly LL) CLO2
0. ● Introduction to Stack
W ● Implementation of Stack (Array & CLO1, Slides: Lecture 11,12 Lecture+ Study stacks
L1 Link list) CLO2, Quiz and queues
6. https://
1. ● Applications of Stack
CLO4
[Link]/
usage
presentation/d/
Stack 1EnTooG5rjOyi62-
& DrG9NTrTnxrt7tf_9
/edit?
Queu
usp=drive_link&oui
e d=10888554447349
1738119&rtpof=tru
e&sd=true
● Arithmetic Expression CLO2,
L1 CLO3,
2. Conversion: Infix to CLO4
postfix & prefix
conversion and
Evaluation, Reverse
String
W ● Introduction to Queue CLO1, Slides: Lecture 13,14 Lecture+A Learn Queue
7. L1 CLO4 ssignmen Operations
● Implementation of Queue (Using https://
3. [Link]/
t
Link list)
file/d/
1clc76YqdTytn5om
uP2ukwqVfx2myS2J
t/view?
usp=drive_link
● CLO1,
L1 Circular Queue
CLO2,
4. CLO3
W Tree L1 CLO4 Slides: Lecture 15,16 Lecture Study BST
● Introduction of Trees
8. operations.
5. ● Types of Trees (Full, Tree, Complete
● Tree, Perfect Tree, Balanced Tree,
https://
Degenerate Tree, Skewed Tree) [Link]
● BST Traversal and BST Balancing /presentation/
● Implementation of Binary Search d/
Tree
11OEtCwB9xnFa
QXbyD_VvqFzJ0q
05XnQb/edit?
usp=drive_link&o
uid=1088855444
73491738119&rt
pof=true&sd=tru
e
L1
6.
W Mid Term
L1
9.
Mid Term 7.
L18.
W10 AVL Tree ● AVL Tree (introduction, CLO1, Slides: Lecture 19,20 Lecture Explore tree
. L19. operations, analysis, application) CLO2 traversals
https://
[Link]
/presentation/
d/
1NYgSQKIvp9KPL
st9gVwYanlsvxNC
KqR-/edit?
usp=drive_link&o
uid=1088855444
73491738119&rt
pof=true&sd=tru
e
● Introduction to Graphs CLO1-
L20. CLO3
● Directed & Undirected Graphs
● Representation of Graphs
(Adjacency Matrix, Adjacency List)
W11. Graph ● Graph Traversal (BFS, Shortest CLO1, Slides: Lecture 21,22 Lecture+A Learn BFS
L21. Path, DFS) CLO2 ssignmen and DFS
https:// t
[Link]/
presentation/d/
16yTYZGHzuybdK_g
zOwKhHD3YxRcFDB
ov/edit?
usp=drive_link&oui
d=10888554447349
1738119&rtpof=tru
e&sd=true
L22. ● Minimum Spanning Tree CLO1,
CLO2
W12. ● CLO1, Slides: Lecture 23,24 Lecture + Explore
Greedy L23. Kruskal Algorithm, Dijkstra CLO2 Quiz hashing
. Algorithms Algorithm
https://
[Link]
m/
presentation/
d/
1viDJNHlhMNik
BrtFBphf0CKgH
Nx2V4DC/edit?
usp=drive_link&
ouid=10888554
4473491738119
&rtpof=true&sd
=true
● CLO1,
L24. Introduction to Hashing CLO2
● Hash function/Hash Code
W ● CLO1, Slides: Lecture 25,26 Lecture+A Explore
L25. Collision
CLO2 ssignmen collisions
13 Hashing ● Collision Resolution: Chaining https:// t
. [Link]
m/
presentation/
d/
1NDB1ba2rXQI_
lFEk8qbER55y0E
CFs2G2/edit?
usp=drive_link&
ouid=10888554
4473491738119
&rtpof=true&sd
=true
L26. ● Collision resolution: Open CLO1,
Addressing CLO2
● Linear Probing
W Memory L27. CLO1, Slides: Lecture 27,28 Lecture+ Study
14 Address ● Memory Address, Integer CLO2 Quiz Memory
. Representation, Component Sum, https:// Address
String Representation [Link]
/presentation/
d/
1rHpnDeDmaug
Qf4W1zUAvl0iKD
rRK_l06/edit?
usp=drive_link&o
uid=1088855444
73491738119&rt
pof=true&sd=tru
e
L28.
.
W15 L29 ● Revision
. CLO1,
L30. .
CLO2,
CLO3,
CLO4
W16 Project ●
L31. Project Presentations
.
L32. .
W17 Final Term ● Final Term
.