0% found this document useful (0 votes)
68 views8 pages

DS & DBMS Course

This document provides information on a course titled "Data Structures" that covers key data structure concepts like arrays, stacks, queues, trees, and graphs. The course aims to help students understand dynamic memory management, algorithms, and apply techniques like sorting and searching. It is a 3 credit hour course with 3 hours of lecture and 2 hours of practical sessions per week. The course outlines 5 modules that will cover topics such as linked lists, hashing, trees, and graphs.

Uploaded by

Manendra
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)
68 views8 pages

DS & DBMS Course

This document provides information on a course titled "Data Structures" that covers key data structure concepts like arrays, stacks, queues, trees, and graphs. The course aims to help students understand dynamic memory management, algorithms, and apply techniques like sorting and searching. It is a 3 credit hour course with 3 hours of lecture and 2 hours of practical sessions per week. The course outlines 5 modules that will cover topics such as linked lists, hashing, trees, and graphs.

Uploaded by

Manendra
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/ 8

Course Code Course Title L T P S C

22CS102003 DATA STRUCTURES 3 - 2 - 4

Pre-Requisite -
Anti-Requisite -
Co-Requisite -

COURSE DESCRIPTION: This course provides an overview of data structure concepts, arrays,
stack, queues, trees, and graphs. Discussion of various implementations of these data objects,
programming styles, and run-time representations.

COURSE OUTCOMES: After successful completion of the course, students will be able to:
CO1. Understand the concept of Dynamic memory management, data types, algorithms, Big
O notation.
CO2. Understand basic data structures such as arrays, linked lists, stacks and queues.
CO3. Solve problem involving graphs, trees and heaps.
CO4. Apply Algorithm for solving problems like sorting, searching, insertion and deletion of
data.

CO-PO-PSO Mapping Table:


Program Specific
Program Outcomes
Course Outcomes
Outcomes
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3 PSO4

CO1 3 2 - - - - - - - - - - 3 - - -
CO2 3 2 - - - - - - - - - - 3 - - -
CO3 3 3 3 - - - - - - - - - 3 - - -
CO4 3 3 3 2 - - - - - - - - 3 - - -
Course
Correlation 3 3 3 2 - - - - - - - - 3 - - -
Mapping
Correlation Levels: 3: High; 2: Medium; 1: Low
COURSE CONTENT
MODULE – I (10
Hours)
Introduction: Introduction to Data Structures, Basic Concepts and Notations,
Abstract Data Types, Analysis and Efficiency of Algorithms, Time and Space
Complexity.
Stack, Queue: Stack, Stack operations, Implementation using arrays,
applications of stack, Queue, Queue operations, Implementation using arrays,
various Queue Structures, applications of queue.

MODULE-2 (8
Hours)
Linked lists: Single linked list, double linked list, circular linked list, operations
on linked lists, Applications of Linked List.
Implementation of stack using Pointers, Implementation of Queue using Pointers.

MODULE-3 (8
Hours)
Searching Techniques: Linear Search, Binary Search and Fibonacci Search.
Sorting Techniques: Selection Sort, Insertion sort, Bubble sort, Merge Sort,
Quick Sort, Heap sort, Radix Sort.
Hash Tables: Hash Functions, Collision Handling Schemes, Applications.

MODULE-4 (10
Hours)
Trees: Vocabulary and Definitions, Binary Tree, Implementation, Binary Tree
Traversal, Binary Search Tree, Implementation, Balanced Search Trees: AVL
Trees, Implementation, Splay Trees, Red- Black Trees.

MODULE-5 (9 Hours)
Graph Theory: Graphs Terminology, Graph ADT, Data Structures for Graphs-
Adjacency Matrix Structure, Graph Traversals, Shortest Paths, Minimum Spanning
Trees- Prims’ Algorithm, Kruskal’s Algorithm, Dijkstra's Algorithm, Floyd-Warshall
Algorithm

Text Books:
1. Data Structures and Algorithm Analysis in C, Mark Allen Weiss, Second
Edition, 2002, Pearson.
2. Introduction to Algorithms, Thomas H. Cormen, Charles E. Leiserson,
Ronald L.Rivest, Clifford Stein, Third Edition, 2010, PHI.
3. Data Structures and Algorithms Made Easy by Narasimha
Karumanchi, 2020, Career Monk Publications.
Reference Books:
1. 1. Fundamental of Data Structures in C, Horowitz, Sahani, Anderson-
Freed, Second Edition, 2008, Universities Press.
2. Classic Data Structures, Debasis Samantha, Second Edition, 2009, PHI

Experiential Learning
1. Demonstrate recursive algorithms with examples.

2. Develop a program to perform operations of a Stack and Queue using arrays.

3. Implement and perform different operations on Single, Double and Circular


Linked Lists.

4. Develop a program to perform operations of Stack and Queue using Linked Lists

5. Develop programs to implement Stack applications.

6. Implement Circular Queues.

7. Implement various Searching techniques.

8. Develop programs for different Sorting techniques

9. Develop a program to represent a Tree data structure.

10. Develop a program to demonstrate operations on Binary Search Tree.

11. Demonstrate Graph Traversal Techniques.

12. Develop a program to find Minimum cost Spanning tree.

Video Resources:

1. https://www.youtube.com/watch?v=zWg7U0OEAoE&list=PLBF3763AF2E1C572F

2. https://www.youtube.com/watch?v=S47aSEqm_0I&list=PLD9781AC5EBC9FA16

3. https://www.youtube.com/watch?v=9MmC_uGjBsM&list=PLyqSpQzTE6M_Fu6l8ir
VwXkUyC9Gwqr6_
Course Code Course Title L T P S C

22CS102005 DATABASE MANAGEMENT SYSTEMS 3 - 2 - 4

Pre-Requisite Data Structures


Anti-Requisite -
Co-Requisite -

COURSE DESCRIPTION: Introduction to database systems; Database design; Relational


model; Relational algebra; SQL queries; Constraints and triggers; PL/SQL; Schema refinement
and normal forms; Transaction management; Concurrency control; Overview of storage and
indexing.

COURSE OUTCOMES: After successful completion of the course, students will be able to:
Apply the concepts of ER-modeling and normalization to design viable data models for a given
CO1.
problem.
CO2. Formulate relational database schemas, apply suitable integrity constraints, for querying
databases.
CO3. Use SQL to store, query, and manipulate data in relational databases.
CO4. Develop PL/SQL blocks to centralize database applications for maintainability and reusability.
CO5. Analyze transaction processing, concurrency control and storage methods for database
management.

CO-PO-PSO Mapping Table:


Program
Program Outcomes Specific
Course Outcomes
Outcomes
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3

CO1 3 3 3 - - - - - - - - - 3 - 3
CO2 3 3 - - - - 2 - - - - - 3 - 3
CO3 3 3 3 - - - - - - - 2 - 3 - 3
CO4 2 3 3 - - - - 2 - - - - 3 - -
CO5 3 3 3 - - - - - - - - - 3 - -
Course
Correlation 3 3 3 - - - 2 2 - - 2 - 3 - 3
Mapping

Correlation Levels: 3: High; 2: Medium;1: Low


COURSE CONTENT

Module 1: Introduction To Database Systems And Database (9 Periods)


Design
Introduction to Database Systems: Database system applications, Purpose of
database systems, View of data - Data abstraction, Instances and schemas, Data
models; Database languages - Data Definition Language, Data Manipulation Language;
Database architecture, Database users and administrators.
Introduction to Database design: Database design and ER diagrams, Entities,
attributes and entity sets, Relationships and relationship sets, Additional features of ER
model, Conceptual Design with ER model.
Module 2: Relational Model, Relational Algebra and Tuple (8 Periods)
calculus
Relational Model: Creating and modifying relations, Integrity constraints over
relations, Enforcing integrity constraints, Querying relational data, Logical database
design, Introduction to views, Destroying/altering tables and views.
Relational Algebra and Tuple calculus: Preliminaries, Relational Algebra operators
and tuple calculus.
Module 3 SQL AND PL/SQL (9 Periods)
SQL: Form of basic SQL query, Nested queries, Aggregate operators, Null values,
Complex integrity constraints in SQL, Triggers and active databases.
PL/SQL: Generic PL/SQL block, PL/SQL data types, Control structure, Procedures and
functions, Cursors, Database triggers.
Module 4 Schema Refinement And Transactions (10 Periods)
Schema Refinement: Problems caused by redundancy, Decompositions, Problems
related to decomposition, Functional dependencies, Reasoning about FDs, First normal
form, Second normal form, Third normal form, Boyce-Codd normal form, Multivalued
dependencies, Fourth normal form, Join dependencies, Fifth normal form.
Transactions: Transaction concept, Transaction atomicity and durability, Concurrent
Executions – Serializability, Recoverability, Implementation of isolation, Testing for
serializability.

Module 5 Concurrency Control, Storage And Indexing (09 Periods)


Concurrency Control: Lock Based Protocols, Timestamp Based Protocols, Validation
Based Protocols, Multiple Granularity, Deadlock Handling.
Storage and Indexing: Data on external storage, File organizations and indexing –
Clustered indexes, Primary and secondary indexes; Index data structures – Hash based
indexing, Tree based indexing; B and B+ Trees, Comparison of file organizations.

Total Periods: 45

EXPERIENTIAL LEARNING

LIST OF EXERCISES:

Week 1: Design and analyze an ER Model for the following use case.
The Library Management System database keeps track of readers with the following
considerations –
• The system keeps track of the staff with a single point authentication system
comprising login Id and password.
• Staff maintains the book catalog with its ISBN, Book title, price(in INR),
category(novel, general, story), edition, author Number and details.
• A publisher has publisher Id, Year when the book was published, and name of the
book.
• Readers are registered with their user_id, email, name (first name, last name),
Phone no (multiple entries allowed), communication address. The staff keeps track
of readers.
Choose appropriate Entities and attributes and relationships and draw the complete ER
diagram.

Week 2:a)Implement Data Definition Language commands -Create, Alter, Drop,


Truncate, and Rename.
b)Implement Data Manipulation Language commands - Insert, Select, Update, and
Delete.
c)Implement Single Row functions - Character, Numeric and Date functions.

Week 3:Implement various types of integrity constraints - NOT NULL constraint,


DEFAULT constraint, UNIQUE constraint, PRIMARY key, FOREIGN key, CHECK
constraint.

Week 4:a)Implement group functions with different operators such as aggregate


operators, group by, having and order by.
b) Implement nested and correlated nested queries using set operators and set
comparison operators.

Week 5:a)Creation of views, synonyms, sequence, indexes and save point.


b)Implement various types of joins - outer join and inner join.

Basic PL/SQL:
Week 6:Construct PL/SQL block for the following.
a) To determine whether a number is palindrome
b) To determine whether a number is an Armstrong number
c) To find greatest of three numbers
d) To display Fibonacci series

Control Structures:
Week 7:a) Write a program in PL/SQL to update the salary of a specific employee by
20% if the salary less than 30000/- and 10% when the salary in between 30000/- and
60000/- and 5% when the salary is above 60000/- and display the salary with a
suitable message.
b)Write a PL/SQL program to display the description of the grade against a student’s
grade using CASE statement.

Exception Handling:
Week 8:a) Develop a PL/SQL program that displays the name and address of a student
whose ID is given. If there is no student with the given student ID in the database, the
program should raise a run-time exception NO_DATA_FOUND, which should be
captured in the EXCEPTION block.
b) Construct the user-defined exceptions to get the salary of an employee and check it
with the job’s salary range. If the salary is below the range, raise an exception
BELOW_SALARY_RANGE. If the salary is above the range, raise the exception
ABOVE_SALARY_RANGE.

Functions:
Week 9:a)Write a function that accepts two numbers A and B and performs the
following operations.
o Addition
o Subtraction
o Multiplication
o Division

b) Write a PL/SQL block that reverses the given number.

Procedures:
Week 10:a)Write a procedure that accepts two numbers and displays their sum.
b)Write procedures to demonstrate IN, IN OUT and OUT parameters.

Cursors:
Week 11:a)Write a block in PL/SQL to create a Cursor that displays the employee name
and number of jobs he or she has done in the past.
b)Write a program in PL/SQL to create a cursor to display the name and salary of each
employee in the EMPLOYEES table whose salary is less than that specified by a passed-
in parameter value.

Triggers:
Week 12:Develop a suitable employee database application by considering appropriate
attributes. a) Whenever the inserted or updated salary is more than 10 lacs per
month a trigger should be fired.
b) Whenever, the inserted or updated salary is less than 5000 per month a
trigger should be activated.

RESOURCES

TEXT BOOKS:
1.Raghu Ramakrishnan, Johannes Gehrke, Database Management Systems, McGraw Hill, 3rd
Edition, 2014.
2. Abraham Silberschatz, Henry. F. Korth, S. Sudarshan, Database System Concepts, McGraw
Hill, 7th edition, 2019.

REFERENCE BOOKS:
1.Ivan Bayross, SQL, PL/SQL: The Programming Language of Oracle, BPB publications, 4th
Edition, 2017.
2. Ramez Elmasri, Shamkant B. Navathe, Fundamentals of Database Systems, 7th Edition,
Pearson, 2015.

SOFTWARE/TOOLS:
1. Oracle SQL plus

Web Resources:

1. https://swayam.gov.in/nd1_noc19_cs46/preview

2. https://www.classcentral.com/course/swayam-introduction-to-database-systems- 17660

You might also like