Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 5

National Computer Education Accreditation Council

NCEAC
NCEAC.FORM.001-C

INSTITUTION National University of Computer & Emerging Sciences, Islamabad

Computer Science (BS) – Spring 2019

PROGRAM (S) TO BE
EVALUATED

Course Description

NCEAC.FORM.001.C
National Computer Education Accreditation Council
NCEAC
NCEAC.FORM.001-C

(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-201


Course Title Data Structure & Algorithms.
Credit Hours 3 (2+1)
Prerequisites by Object Oriented Programming (CS-217)
Course(s) and Topics
Assessment Instruments 100% Theory and a separate 1 credit hour lab
with Weights (homework,
quizzes, midterms, final, Assessment instruments of Theory part:
programming assignments,
lab work, etc.) Midterm Exam 1 25%
Quizzes 5 10%
Homework/ Assignments 4 15%
Final Exam 1 50%

Course Coordinator Mr. Hafiz Tayyeb Javed


URL (if any)
Current Catalog This course covers some of the commonly used data structures and algorithms
Description
in software development. It is aimed at helping the students to understand the
reasons for choosing certain structures or algorithms. Topics covered include
managing complexity, abstraction, analysis, lists, queues, trees, hash tables
maps, and time complexity measurements of any provided or designed
algorithms and data structure operations.
Textbook (or Laboratory Book Title: Data Structures Using C and C++
Manual for Laboratory Authors: Y. Langsam, M. J. Augenstein, A. M. Tenenbaum
Courses) Edition:2nd
Reference Material Book Title: Data Structures using C++
Author: D. S. Malik
Edition: Eight
Course Description and Course Objectives (CO): at least 5 Cos which are as following.
CLOs 1. To introduce the basic theory of complexity and data structures as basic
building blocks. .
2. To develop the skills to analyze time (and space) requirements for a data
structure and associated algorithms
3. To prepare the students to pick the right data structure for a given
problem.
4. To understand the which data structure to implement in a certain
scenario
5. To introduce the basic theory of complexity and data structures as basic
building blocks.

NCEAC.FORM.001.C
National Computer Education Accreditation Council
NCEAC
NCEAC.FORM.001-C

Complexity Analysis (1 Lecture)


Tentative course Abstract Data Types and Arrays (1 Lecture)
Sorting Techniques: Bubble Sort, Selection Sort,
outline and lecture
Insertion (2 Lectures)
plan
Linked List (1 Lecture)
Topics Covered in the
Linked list and its implementation (2 Lectures)
Course, with Number of
Lectures on Each Topic
(assume 15-week
instruction thirty 30-
lectures and one-hour
lectures) Linked list (Doubly, circular) (1 Lectures)
Elementary Data Structure: Stack (1 Lecture)

Applications of stack (conversion, evaluation of


expression infix, postfix, prefix) (2 Lectures)

Elementary Data Structure: Queue (1 Lecture)


Queue applications and implementation using stacks
Priority Queues (2 Lectures)

Trees: Tree Data Structure Definition and Basic


terminologies (1 Lecture)

Trees: Binary Search Tree (Representation, insertion,


searching) (1 Lectures)
Trees: Binary Search Tree (display, deletion) (2
Lectures)
Trees: AVL Tree (intro) (1 Lecture)
Trees: AVL Tree (Insertion, Implementation) (1
Lectures)

Heaps: Heap Data Structure, Max and Min Heaps (2


Lectures)

Hashing, Hashing types, Hash Function, Selection of


good hashing function (2 Lectures)

NCEAC.FORM.001.C
National Computer Education Accreditation Council
NCEAC
NCEAC.FORM.001-C

Graphs: Adjacency Matrix and Adjacency list (1


Lecture)
Graphs Searching: DFS and BFS (2 Lectures)
Graphs: Minimum Spanning Trees (Prim's and
Kruskal's Algorithm) (1 Lectures)
Graphs: Shortest Path Algorithms (Bellman Ford,
Dijkstra) (2 Lectures)

Laboratory Introduction to Algorithms and data structure. Discussion about efficient


Projects/Experiments algorithms right use of data structure basic and derived data structure.
Done in the Course Evaluation is managed with lab work, practical quizzes and lab project along
with graded assignment tasks.
Programming 1) C++ Algorithm Designing and its evaluation
Assignments Done in the 2) Paradigms: Class based and Structure based
Course
Class Time Spent on (in Theory Problem Solution Design Social and Ethical
credit hours, Hrs/Min) Analysis Issues
1.5 CH, 55 min. 0.7 CH, 25 min. 0.7 CH, 20 min. 0.1 CH, 10 min.
Oral and Written Every student is required to submit at least __3__ written reports of typically
Communications __8_ pages and to make __2___ oral presentations of typically __15___
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.

COURSE CONTENTS (Lab/ Practical):


**Courseware Events
Weeks Contents/Topics (MM/ IT Lab/Case Study/ Comments (if any)
Assignment/
Presentation etc.)
Week-01 Templates (class, Functions) Lab Revision
Pointers, Recursions
Week-02 Lab Revision

Array based Searching algorithms Bubble sort, selection


Week-03 Assignment
sort, insertion sort
Week-04 Array based list implementation Lab Quiz-1
Linked list implementation and design problems and its
Week-05 applications
Different variants of Linked List, design problems and its
Week-06 Case Study
applications
Week-07 Stack, Application of Stack, Expression Evaluation Assignment
Week-08 Queues, Implementation of Queues using stack and its
NCEAC.FORM.001.C
National Computer Education Accreditation Council
NCEAC
NCEAC.FORM.001-C

application
Week-09 Trees, Binary Search Trees (Balanced and unbalanced) Assignment
Week-10 AVL (Insertion, Deletion Implementation) Lab Quiz-2
Heap implementation (Min Heap, Max Heap)
Week-11 Assignment

Hashing and its Implementation


Week -12 Graded Lab Task

Graphs: Adjacency Matrix and Adjacency list


Week 13 Application of Graphs searching using DFS BFS Assignment

Week-14 Application of shortest path finding Algorithms Graded Lab Task


Week-15 Revision

Practical/ Programming Work/ Tools: C++, Visual Studio

NCEAC.FORM.001.C

You might also like