You are on page 1of 9

(SSUET/QR/111)

SIR SYED UNIVERSITY OF ENGINEERING & TECHNOLOGY


CYBER SECURITY DEPARTMENT

COURSE INFORMATION SHEET


Session: Spring-2024
Course Title: Data Structures and Algorithms
Course Code: SE-203T
Credit Hours: 3
Semester: 3rd
Pre-Requisites: SE-102T: Programming Fundamentals
Instructor Name: Ms. Aiman Qasim
Email and Contact Information: aiman.qasim@ssuet.edu.pk
WhatsApp Group DSA(Spring 2024)
Office Hours: 08:30 A.M. to 04:30 P.M
Mode of Teaching:
Synchronous/Asynchronous/ Hybrid/Blended

COURSE OBJECTIVE:

The objective of this course is to guide students in understanding the basic concepts of data organization
and manipulation techniques, and to show how they are useful in problem solving. The course will cover
basic programming concept and its illustration as Abstract Data Type. The course will explain in detail
different types of data structures covering its operations and storage mechanisms. Most of the concepts are
illustrated by several examples using both graphical illustration and algorithm. Quizzes, assignment and
class discussions are conducted to evaluate the student about the clearance of concepts taught in class.

COURSE OUTLINE:

Fundamental data structures, data types, abstract data types, user defined data types, algorithms and their
complexity, time-space trade off, arrays, records and pointers, matrices, linked lists, circular lists, two way
lists, sequential (array) and linked implementation of stacks and queues, polish notation, recursion, towers
of Hanoi, recursive implementation of stacks and queues, priority queues, tree, binary tree, binary search
tree, traversals threaded trees, heap, general trees, graphs, depth-first/breadth first traversal, adjacency
matrix, shortest distance algorithms, sorting, insertion sort, selection sort, merge sort, radix sort), hashing,
searching: (linear search, binary search, depth first /breadth first search),

Page 1 of 5
(SSUET/QR/111)
SIR SYED UNIVERSITY OF ENGINEERING & TECHNOLOGY
CYBER SECURITY DEPARTMENT

COURSE LEARNING OUTCOMES (CLOs) and its mapping with Program Learning Outcomes
(PLOs):

No. PLOs Bloom’s


Course Learning Outcomes (CLOs) Taxonomy
PLO_2
(Knowledge
Explain fundamental data structures as well as algorithms and
1 for solving C2 (Understand)
their complexities.
computing
problem)
2 PLO_3
Apply different operations on linear data structures (Problem C3 (Apply)
Analysis)
3 PLO_4
Construct non-linear data structures and perform its
(Design of C3(Apply)
operations.
Solutions)

COMPLEX COMPUTING PROBLEM:

Complex Engineering Problem Included: No


Details
Attributes could be: WP1, WP3, WK5, WK8
WP1: Depth of knowledge required
WP3: Depth of analysis required
WK5: Engineering Design
WK8: Research Literature

RELATIONSHIP BETWEEN ASSESSMENT TOOLS AND CLOS:

Assessment Tools CLO-1(32) CLO-2(31) CLO-3(37)


Quizzes 3(9.37%) 3(9.677%) 4(10.81
%)
Assignments 4(12.5%) 3(9.677%) 3(8.10%)
Midterm Exam 15(46.87%) 15(48.387%) --
Final Exam 10(31.25%) 10(32.258%) 30(81%)

Page 2 of 5
(SSUET/QR/111)
SIR SYED UNIVERSITY OF ENGINEERING & TECHNOLOGY
CYBER SECURITY DEPARTMENT

GRADING POLICY:

Assessment Tools Percentage


Quizzes 10%
Assignments 10%
Midterm Exam 30%
Final Exam 50%
TOTAL 100%

Recommended Book:
 Weiss, Mark. Data Structures and Algorithm Analysis in (C++, Java), 4th edition, USA, published by
Pearson 2014.
 Dale, Nell. Data Structures (C++, Java), 3rd edition, published by Jones and Bartlett.

Reference Books:

 Hemant, Jain. Problem Solving in Data Structures and Algorithm. 2nd edition.
 Drozdek, Adam. Data Structures and Algorithms in C++, 4th edition, USA, published by Cengage
Learning 2013.

International University: https://catalogue.surrey.ac.uk/2022-3/module/COM1029


National University: https://www.bahria.edu.pk/wp-content/uploads/2017/06/Data-Structures.pdf

COURSE BREAKDOWN WITH LAB SYNCHRONIZATION:

- Both sides same Colours: Lab is synchronized with the topic


- Red Color: Lab is not synchronized (conducted before theory)
- No Color: Lab is to introduce new hardware or software skill /
Open Ended Lab / Lab is relevant to a topic taught in
pre-requisite and required for upcoming labs

Week Topics Laboratory Synchronization


No.
1 Data Structures and their Operations: To study the concepts of String Constant
Introduction, Overview of Data Structures, Pool, String literals, String immutability
Data Structure’s operations, Types of Data and Wrapper classes.
Structures, common features of using
algorithm.

Page 3 of 5
(SSUET/QR/111)
SIR SYED UNIVERSITY OF ENGINEERING & TECHNOLOGY
CYBER SECURITY DEPARTMENT

2 Algorithm Analysis: To understand the complexities of the


Introduction, Pseudo coding, Control recursive functions and a way to reduce
Structures, Analysis of Algorithms, these complexities.
Efficiency of Algorithms, Complexity of
Algorithms, Asymptotic Notation/ Big O
Notations.
Recursion
Introduction to recursion, examples of
recursion
3 Arrays: To understand arrays and its memory
Introduction to Arrays, 1D and 2D Array, allocation and implement Array List and
Traversing, insertion, deletion. Vector.
2-D array representation in memory
a. Column major order
b. Row major order
4 Sorting Algorithms: To sort a linear array using Selection Sort,
a. Bubble Sort, Bubble Sort and Merge Sort.
b. Selection Sort
c. Quick Sort
d. Merge Sort
5 Linear and Binary Search with examples To find an element in linear array using
Linked Lists: Linear Search and Binary Search.
Introduction and Types of Linked List,
Insertion and Deletion in singly LL.
6 Doubly and Circular Linked Lists: Implementing singly linked list, associated
Doubly Linked List operations and Runner technique.
Circular Linked List.
7 Stacks: Open Ended.
Introduction to Stack data structure, Array
& Linked List representation of Stacks.
Polish Notation Prefix, Infix, Postfix,
Expression trees.
Conversion &Evaluation of postfix
expression
8 Queues:
Introduction to Queue data structure, Implementing doubly linked list,
Array & Linked List implementation of associated operations and LRU technique.
Queues.
9 Midterm

Page 4 of 5
(SSUET/QR/111)
SIR SYED UNIVERSITY OF ENGINEERING & TECHNOLOGY
CYBER SECURITY DEPARTMENT

10 Trees: To implement Stack as Arrays and linked


Basic Terminologies, Binary Trees, list.
Array/Linked List representation of
Implement Stack by using Stack class.
binary trees in memory, Traversing
Binary Trees, Pre, In, and Post-order
traversal’.
11 Trees: FIFO Queue implementation using Stack
Binary Search Trees and Linkedlist.
a. searching
b. Inserting
c. Deleting
Efficiency of Binary Search Trees
12 Minimum Spanning Trees: Algorithm to implement trees. Searching,
Shortest path algorithms inserting, deleting, etc.
(Prim’s Algorithm, Dijkstra’s Algorithm)
13 Graphs: Implementing graph using BFS and DFS
Basic Terminologies, Graph Theory,
Directed, Undirected Graphs, Sequential
representation of graphs, Adjacency
Matrix. Link List representation of graphs,
Operations on Graphs, Graph Traversals
(Depth-First Traversal, Breadth First
Traversal.
14 Hashing Implementing Hashing techniques with
Hashing technique and hash table, collision resolution.
Types of hashing: division, mid square,
folding.
Types of Collision Resolution, linear
and quadratic probing, midsquare
method, folding method
15 Heap: Open Ended Lab
Binary Heaps, Heap creation and operations,
Insertion and deletion in heap.
Min and Max Heap, Heap sort.
16 Data Compression: Lab Exam/Project Demonstration
Huffman’s Algorithm.
Introduction to Knapsack Problem:
Branch and Bound, Greedy Algorithm.

Page 5 of 5
(SSUET/QR/111)
SIR SYED UNIVERSITY OF ENGINEERING & TECHNOLOGY
CYBER SECURITY DEPARTMENT

LESSON PLAN

Course Title: Data Structures and Algorithm


Course Code: SWE- 203T

Week Required
No. Week Dates Topics Reading Key Date

12-03-2024 Data Structures and their Operations: Reading / slides


1 to Introduction, Overview of Data material is
15-03-2024 Structures, Data Structure’s operations, provided
Types of Data Structures, common
features of using algorithm.

Algorithm Analysis: Weiss- Chap 2


2 18-03-2024 Introduction, Pseudo coding, Control Pg. 029 – 045
to Structures, Analysis of Algorithms, Weiss- Chap 1
22-03-2024 Efficiency of Algorithms, Complexity of Pg. 008 – 012
Algorithms, Asymptotic Notation/ Big O
Notations.
Recursion
Introduction to recursion, examples of
recursion

25-03-2024 Arrays: Dell – Chap 3Pg. Assignment#


3 to Introduction to Arrays, 1D and 2D Array, 182-186 1
29-03-2024 Traversing, insertion, deletion. Dell – Chap 1Pg.
2-D array representation in memory 038 - 040
a. Column major order
b. Row major order

01-04-2024 Sorting Algorithms: Reading / Quiz#1


4 to a. Bubble Sort, slides materialis
05-04-2024 b. Selection Sort provided
c. Quick Sort Dell – Chap 11
Pg. 625-642
d. Merge Sort.

08-04-2024
to
12-04-2024 Official Holidays (Tentative)

Page 6 of 5
(SSUET/QR/111)
SIR SYED UNIVERSITY OF ENGINEERING & TECHNOLOGY
CYBER SECURITY DEPARTMENT

15-04-2024 Linear and Binary Search with examples Dell – Chap03


5 to Pg. 170 – 175
19-04-2024 Linked Lists: Reading Slides
Introduction and Types of Linked List, will be
Insertion and Deletion in singly LL. Provided

22-04-2024 Doubly and Circular Linked Lists: Dell – Chap06


6 to Doubly Linked List Pg. 346-355
26-04-2024 Circular Linked List. Dell – Chap06
Pg. 381-386

29-04-2024 Stacks: Dell – Chap02


7 to Introduction to Stack data structure, Array Pg. 078 – 081 Assignment#
03-05-2024 & Linked List representation of Stacks. Pg. 101 – 104 2
Polish Notation Prefix, Infix, Postfix, Dell – Chap02
Expression trees. Pg. 133 - 136
Conversion &Evaluation of postfix
expression.

Queues: Dell – Chap02 Quiz#2


8 Introduction to Queue data structure, Pg. 137 – 139
Array & Linked List implementation of Dell – Chap04
Queues. Pg. 219 – 222

9 Midterm Examination
(06-May-2024 to 10-May-2024)

13-05-2024 Trees: Dell – Chap04


to Basic Terminologies, Binary Trees, Pg. 251 – 433
10 17-05-2024 Array/Linked List representation ofbinary Weiss – Chap4
trees in memory, Traversing Binary Pg. 102 - 109
Trees, Pre, In, and Post-order traversal’.

20-05-2024 Trees: Weiss – Chap4


11 to Binary Search Trees Pg. 109 - 112
24-05-2024 a. searching Weiss-Chap10
b. Inserting Pg. 433 – 439
c. Deleting Dell – Chap 4Pg.
Efficiency of Binary Search Trees 423 - 433

Page 7 of 5
(SSUET/QR/111)
SIR SYED UNIVERSITY OF ENGINEERING & TECHNOLOGY
CYBER SECURITY DEPARTMENT

12 27-05-2024 Minimum Spanning Trees: Dell – Chap 4Pg.


to Shortest path algorithms 455 – 460 Assignment
31-05-2024 (Prim’s Algorithm, Dijkstra’s Algorithm) Dell– Chap 10 #3
Pg. 584 - 590

03-06-2024 Graphs:
13 to Basic Terminologies, Graph Theory, Dell– Chap 10
07-06-2024 Directed, Undirected Graphs, Sequential Pg. 598 - 604
representation of graphs, Adjacency
Matrix. Link List representation of graphs,
Operations on Graphs, Graph Traversals
(Depth-First Traversal, Breadth First
Traversal.

10-06-2024 Hashing
14 Hashing technique and hash table, Weiss – Chap5 Quiz#3
to
Pg. 171 - 181
14-06-2024 Types of hashing: division, mid square,
folding.
Types of Collision Resolution, linear
and quadratic probing, midsquare
method, folding method

17-06-2024 Heap: Weiss –Chap5Pg.


15 to Binary Heaps, Heap creation and 181-185
21-06-2024 operations, Insertion and deletion in heap. Weiss- Chap 6
Min and Max Heap, Heap sort, Pg. 226 -232
24-06-2024
to Official Holidays (Tentative)
28-06-2024

01-07-2024 Data Compression: Weiss- Chap 6


16 Pg. 232-234
to Huffman’s Algorithm.
05-07-2024 Introduction to Knapsack Problem:
Branch and Bound, Greedy Algorithm.

Final Examination
(15-07-2024 to 26-07-2024)

Page 8 of 5
(SSUET/QR/111)
SIR SYED UNIVERSITY OF ENGINEERING & TECHNOLOGY
CYBER SECURITY DEPARTMENT

Name& Signature: Aiman Qasim Date: 12 - 03 - 2024

(Course Instructor)

Name: & Signature: Dr. Muhammad Naseem Date: 12 - 03 - 2024

(Head of Department)

Page 9 of 5

You might also like