CSE220 Data Structures - Course Description and Outcome - Zaber Mohammad
CSE220 Data Structures - Course Description and Outcome - Zaber Mohammad
Co-requisites: NO
This course is an introduction to data structures, where the students will study the elementary
data structures such as arrays, lists, stacks, queues, trees, graphs, etc. These data structures
will be used to study and implement different algorithms such as sorting, searching, tree
traversal, etc. The course includes a 3 hour mandatory laboratory per week as CSE220L. In the
laboratory, the students will use a standard programming language, usually Java, to implement
the various data structures and algorithms learned in the theory component of the course.
C. Course Objective:
a. Review linear arrays, exceptions and the various concepts of object oriented
programming such as inheritance, polymorphism, abstract class, interface etc.
b. Teach students the basics of circular array and advantage(s) of it over a linear array
d. Introduce the students to stack and queue data structures and explain how they are
implemented
e. Discuss the fundamental concept of recursion so that they can build recursive models for
simple problems.
Department of CSE/SECS Course Description and Outcome Form Last Revision: Fall 2019 Page 1 of 7
f. Introduce students to sorting and searching algorithms such as insertion sort, selection
sort, bubble sort, binary search, k-indexed sorting and searching, etc.
g. Discuss trees and graphs and explain related algorithms (e.g. tree or graph traversal)
Department of CSE/SECS Course Description and Outcome Form Last Revision: Fall 2019 Page 2 of 7
D. Course Outcomes (COs):
CO3 Compare the suitability and merits of various data structures and basic algorithms when given certain 10%
requirements or constraints.
CO5 Construct general purpose data structures and basic algorithms for solving programing problems 25%
CO3 Compare the suitability and merits of various data a Cognitive/Evaluate Lecture Exam
structures and basic algorithms when given certain
requirements or constraints.
Department of CSE/SECS Course Description and Outcome Form Last Revision: Fall 2019 Page 3 of 7
CO4 Apply concepts of recursion to solve programming a Cognitive/ Apply Lecture + Lab Assignment,
problems Quiz, Exam, Lab
Work
CO5 Construct general purpose data structures and basic c Cognitive/ Create Lab Lab work
algorithms for solving programing problems
Department of CSE/SECS Course Description and Outcome Form Last Revision: Fall 2019 Page 4 of 7
F. Course Materials:
3 Stacks (using arrays and linked lists) Lecture 9, 10 CO1 CO3, CO5
5 Elementary searching and sorting Lecture 13, 14, 15, 16 CO2 CO3, CO5
methods; key-indexed searching and
sorting; hashing
7 Introduction to Trees and BST Lecture 20, 21, 22 CO1, CO2, CO5
No Topic Week/Lecture#
1 Linear array, Circular array Week 1
Department of CSE/SECS Course Description and Outcome Form Last Revision: Fall 2019 Page 5 of 7
4 Dummy headed circular doubly linked list Week 4
5 Build a stack using List Week 5
Use the stack for parentheses checking
6 Build a queue using a circular array. Week 6
Apply the queue in a problem
8 Recursion Week 8
9 Searching, Sorting Week 9
10 Key-indexing, Hashing Week 10
11 Tree, graph Week 11
H. Assessment Tools:
Quizzes 10-15%
Assignment 5-10%
Lab 25%
Final Exam 30%
I. CO Assessment Plan:
Quizzes √ √ √
Midterm Exam √ √ √
Lab √ √ √
Final Exam √ √ √ √
J. CO Attainment Policy:
As per BRAC University Policy.
Department of CSE/SECS Course Description and Outcome Form Last Revision: Fall 2019 Page 6 of 7
K. Grading policy:
As per BRAC University Policy
Department of CSE/SECS Course Description and Outcome Form Last Revision: Fall 2019 Page 7 of 7