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

Course Description Form Theory

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)
27 views5 pages

Course Description Form Theory

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
You are on page 1/ 5

National Computing Education Accreditation Council

NCEAC

NCEAC.FORM.001-D

COURSE DESCRIPTION FORM


INSTITUTION _University of Engineering and Technology, Lahore New Campus_

PROGRAM (S) TO BE BS Software Engineering


EVALUATED
A. Course Description
(Fill out the following table for each course in your computer science curriculum. A filled-out
form should not be more than 2-3 pages.)
Course Code CS-261
Course Title Data Structures and Algorithms
Credit Hours 3
Prerequisites by Object Oriented Programming
Course(s) and Topics
Assessment Instruments Quiz 1: 10 Marks
with Weights Quiz 2: 10 Marks
(homework, quizzes, Mid-Term Exam: 30 Marks
midterms, final, Final-Term Exam: 40 Marks
programming Assignments: 10 Marks
assignments, lab work,
etc.)
Course Coordinator Ms. Drakhshan Bokhat
URL (if any)
Current Catalog This course is designed to introduce students to the fundamental data
Description structures and engages them to use data structures as tools to
algorithmically design efficient computer programs. In addition, students
will be introduced to analytical tools for comparing data structures in
terms of their time and space complexities. This course focuses on basic
and essential topics in data structures, including array-based lists, linked
lists, stack, queue, recursion, binary trees, binary search trees, AVL, heaps,
hashing, graphs and sorting algorithms.
Textbook (or Laboratory Book
Manual for Laboratory • Data structures and algorithm analysis in C++ 4th ed. Mark Allen
Courses) Weiss
• Data structures and algorithm analysis in C++ 4th ed. Adam Drozdek
Reference Book:
• Data Structures and Algorithms in C++by Michael T. Goodrich,
Roberto Tamassia & David Mount 2nd Edition (2011) Jon Wiley &
1 NCEAC.FORM.001.D
National Computing Education Accreditation Council
NCEAC

NCEAC.FORM.001-D

Sons
• C++ Data Structures: A Laboratory Courseby Stefan Brandle,
Jonathan Geisler, James Roberge& David Whittington 3rd Edition
(2009) Jonesand Bartlett Publishers

Reference Material
Course Goals CLO Description
CLO1
Manipulate pointers/references syntactically and
algorithmically to rearrange relations between objects/nodes of
a collection.
CLO2 Convert expressions in infix, prefix or postfix notation into
one another according to precedence rules and build
expression tree from them and vice versa.
CLO3 Modify the functions of abstract data structures through
dynamic memory allocation like stacks, queues, priority queues,
linked lists for addition, removal, and search
CLO4 Modify the functions of abstract data structures trees and
graphs for addition, removal, search and inspect of
nodes/objects and traverse through them recursively and non-
recursively.
CLO5 Analyze complexity and criticality of algorithms to manipulate
aforementioned ADTs as well as searching, sorting and
balancing of data/nodes/objects in general; and in hash tables.
Topics Covered in the Weeks Topics CLOs
Course, with Number of Week Introduction:
1 1. Introduction to course of Data Structures and CLO1
Lectures on Each Topic
(assume 15-week Algorithms highlighting its importance in
instruction and one-hour computer science.
lectures) 2. Stack based and heap based dynamic
implementation of Abstract Data Structures in
OOP.
3. Pointers and self- referential structures.
4. Array List
Week Linked list:
CLO3
2 1. Singly linked list and its operations.
2. Singly linked list uses to handle different
computational tasks
3. Circular linked list
Week Linked List: CLO3
2 NCEAC.FORM.001.D
National Computing Education Accreditation Council
NCEAC

NCEAC.FORM.001-D

3 1. Circular Doubly Linked list


2. Doubly linked lists
Week Stack: CLO2
4 1. Stack (LIFO) using arrays
2. CStack class by maintaining nodes in the
system heap.
3. Push/Pop operations and preconditions and
their implementation.
Week Stack: CLO2
5 1. Post-condition/Precondition based usage
and design of collection structures.
2. Copy constructor, assignment operator and
destructor of stack class.
3. Supplying print function to help debugging
for users of CStack class objects.
4. Conversion of infix Arithmetic expressions to
prefix, postfix Arithmetic expressions.
5. Evaluation of Arithmetic Expressions in
prefix, postfix notations using stack.
Week Queue: CLO3
6 • Queues using arrays,
• Queue and its operations. Their uses to
handle different computational tasks.
• Queue and mod (circular)
Week Queue: CLO3
7 • Queues using dynamic memory
• Circular Queue.
• Priority Queue.
• Queue and its operations. Their uses to
handle different computational tasks.
Week Recursion: CLO4
8 1. Recursive function definition and recursive
stack trace/Activation record
2. Tail and non-tail recursion, Binary Recursion
3. Tower of Hanoi
Week Mid-term
9
Week Sorting: CLO4
10 1. Bubble sort
2. Selection sort
3. Insertion sort
3 NCEAC.FORM.001.D
National Computing Education Accreditation Council
NCEAC

NCEAC.FORM.001-D

4. Quick sort (Randomized Partition)


5. Merge Sort
Week Hashing: CLO5
11 1. Hashing, Hash Table its properties
2. Hash function and its characteristics
a. Folding, Mid square function,
Extraction, Radix transformation
3. Collision, techniques to avoid or resolve
collisions (Open addressing and Closed
addressing)
a. Linear and quadratic Probing
4. String hashing concepts
Week Linear and binary search CLO4
12 Tree:
1. Binary Trees and M-ary Trees.
2. Components of a tree-nodes, edges.
Binary Search Tree:
1. Insertion Binary Search Trees (BST).
2. Searching
3. Deletion
4. Traversals (Pre-order, post-order, in-order, )

Week 5. Balancing Binary Tree and Other Height CLO4


13 Balanced Trees
AVL Trees:
1. Balance Factor
2. Rotations
Week Heaps CLO5
14 1. Min-Heap
2. Max-Heap
3. Heapify (Up, Down)
4. Heap Sort
5. Priority Queue
Week Graphs: CLO4
15 1. Basic Operations and traversals
o BFS, DFS
2. Minimum spanning Tree
o Kruskal, Prims Algorithm
3. Shortest Path problems
4. Dijkstra Algorithm
Laboratory
4 NCEAC.FORM.001.D
National Computing Education Accreditation Council
NCEAC

NCEAC.FORM.001-D

Projects/Experiments
Done in the Course
Programming
Assignments Done in the
Course
Class Time Spent on (in Theory Problem Solution Design Social and Ethical
credit hours) Analysis Issues
>1.5 <1 <1 <0.1
Oral and Written Every student is required to submit at least _____ written reports of
Communications typically _____ pages and to make _____ oral presentations of typically
_____ minute’s duration. Include only material that is graded for
grammar, spelling, style, and so forth, as well as for technical content,
completeness, and accuracy.

Instructor Name: Drakhshan Bokhat

Instructor Signature
Date 2-2-2021

5 NCEAC.FORM.001.D

You might also like