Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
50 views

BSCS4-Data Structures-Courseoutlines

This 3 credit hour course covers data structures and algorithms over 16 weeks. Students will learn to create, store, retrieve, order and manipulate data structures like stacks, queues, linked lists, trees, graphs and hashes. They will also analyze the time and space complexity of algorithms. The course objectives are to introduce common data structures and algorithms, teach complexity analysis, and have students implement structures in C++. On completion, students will understand properties of abstract data types, operations, and be able to select appropriate structures for problems and analyze algorithm efficiency. The course will be taught through lectures, assignments and exams.

Uploaded by

saif_bwp7
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
50 views

BSCS4-Data Structures-Courseoutlines

This 3 credit hour course covers data structures and algorithms over 16 weeks. Students will learn to create, store, retrieve, order and manipulate data structures like stacks, queues, linked lists, trees, graphs and hashes. They will also analyze the time and space complexity of algorithms. The course objectives are to introduce common data structures and algorithms, teach complexity analysis, and have students implement structures in C++. On completion, students will understand properties of abstract data types, operations, and be able to select appropriate structures for problems and analyze algorithm efficiency. The course will be taught through lectures, assignments and exams.

Uploaded by

saif_bwp7
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Data Structures and

Algorithms
CSCP-2034
Program BSCS

Credit Hours 3

Duration 16 Weeks / 32 sessions

Computer Organization and Assembly


Prerequisites
Language

Resource Person
Course Description
This course familiarize students with concepts of creating, storing, retrieving, ordering, and
manipulation of data structures, abstract data types (ADTs), and the basics of analysis of
algorithms.  The students will learn formal specification of data structures in depth.

Course Objectives
 To introduce the students to basic data structures and their associated algorithms.
 To introduce the theory of complexity and develop the skills to analyze time and space
requirements for a data structure and its associated algorithms.
 To implementing data structures in C++
 To determine, which data structures are appropriate in various situations.

Learning Outcomes

On completion of this course, students will be able to:

 Understand the properties of Abstract Data Types and various data structures.
 Understand the associated operations associated.
 Identify the strengths and weaknesses of different data structures.
 Design and employ appropriate data structures for solving computing problems.
 Possess the knowledge of various existing algorithms.
 Analyze and compare the efficiency of algorithms.

Violation of Academic Honesty Policy:


If any two projects / assignments are identical or partially identical, a zero will be awarded.
The repetition of such kind may lead to an “F” grade in the course.

Class Conduct
Class attendance is mandatory. You may miss up to 6 class sessions. On the seventh absence,
you will be withdrawn from the course. As a courtesy to the instructor and other students, be
prepared to arrive at class and be in your seat on time. In addition, please note that each class
last for 90 minutes.
Also keep in mind some general rules as given below:
 Cell phones should be powered off.
 Eatables are not allowed in the class.
 The teacher will not tolerate any disruptive behavior in the class.
 The Dress Code has to be observed, no warnings will be given, and violators will be
asked politely to leave the class and consequently will be marked absent.
Participation
Students are required to attend all classes and read all the assigned material in advance of
class (although not necessarily with perfect comprehension). Advanced preparation and class
participation are crucial for periods in which we discuss cases. During discussion sessions,
the instructor generally keeps track of the insightful and useful comments students make.
(Any unproductive contribution is not rewarded)

     
Data Structures and Algorithm Analysis by Clifford A. Shaffer , Edition 3.2 Edition,
     
Data Structures and Algorithm Analysis in C++ by Mark Allen Weiss , Fourth Edition

Calendar of Activities & (Session Plan)


Weeks Contents Activities
 Introduction to the Course
 Complexity Analysis I
1
 Complexity Analysis II
 Abstract Data Types, Stacks ADT
 Applications of Stack e.g. Polish notations, Arithmetic expression
2 evaluation
 Infix, Post fix, Prefix concepts and implementation
 Queues ADT I
 Queues ADT II
3 Assignment-1
 Implementation and applications of queue

 List ADT
Quiz 1
4  Linked Lists I
 Singly linked lists
 Linked Lists II
 Doubly linked lists
 Linked Lists III
5
 Implementation of Stack and Queue using Link List

 Linked Lists IV
6  Link List Iterators Assignment-2

 Recursion I
 Understanding the nature of problem
7  Why need recursion
Quiz-2
 Identifying base case and terminating point
 Stack trace and Recursive Tree
 Recursion II
 How to implement-two parts of a recursive function.
8
 Examples: Factorial and its logic and memory model and stack trace.
9 MID TERM
 Trees I
 Tree Data Structure Definition and Basic terminologies
10
 Tree II
 Tree Traversal, Expression trees
 Tree III Assignment-3
11  Binary Search Trees
 Tree IV

 Height Balanced Trees (Red Black trees) I


12  Tree V
 Height Balanced Trees (Red Black trees)
 Heaps I
 Heap Data Structure, Max and Min Heaps
13
 Heaps II
 Priority Queues and Heap Sort
 Searching Techniques I
 Linear Search, Binary Search and Indexed Sequential Search
Assignment-4
14  Searching Techniques II
 Bubble Sort, Selection Sort, Insertion Sort

 Searching Techniques III Quiz-4


 Merge Sort, Quick Sort
15
 Graphs I
 Basic Terminologies
 Graphs II
 Breadth First and Depth First search traversals, test for acclivity
16
 Hashing
 Definition and its types and examples

17th Week FINAL TERM

You might also like