CommonSubjectSyllabus (3rd Semester)
CommonSubjectSyllabus (3rd Semester)
CO - PO MAPPING
PO
s PO PO PO PO PO PO PO PO PO9 PO10 PO1 PO12 PSO1 PSO PSO
1 2 3 4 5 6 7 8 1 2 3
COs
C 1 2 1 2 1 - - - - - 1 1 - 1 -
O1
C 2 1 1 1 1 - - - - - 1 2 - 1 -
C 2 2 1 2 2 - - - - - 2 2 - 1 -
C 2 1 1 2 1 - - - - - 2 2 - 1 -
O4
C 2 1 1 2 1 - - - - - 2 2 - 1 -
C 2 1 1 2 1 - - - - - 2 2 - 1 -
O
Correlation levels: 1: Slight 2: Moderate 3: Substantial (High)
(Low) (Medium)
L T P C
23CS301 DATA STRUCTURES
3 0 0 3
Course Objective(s):
The purpose of learning this course is
To understand the concepts of ADTs
To Learn linear data structures – lists, stacks, and queues
To understand non-linear data structures – trees
To understand non-linear data structures – graphs
To understand searching, sorting and hashing algorithms
Course Outcomes:
At the end of this course, learners will be able to:
CO1: Develop programs using arrays, linked lists for various applications
CO2: Develop programs using stacks and queues
CO3: Apply the operations of unbalanced and balanced trees to develop solutions to various
problems
CO4: Solve problems using graph data structure
CO5: Apply searching, sorting and hashing algorithms to solve various computing problems
Unit I LISTS 9
Abstract Data Types (ADTs) – List ADT – Array-based implementation – Linked list
implementation – Singly linked lists – Circularly linked lists – Doubly-linked lists –
Applications of lists – Polynomial ADT
Unit II STACKS AND QUEUES 9
Stack ADT: Operations- Stack model – Implementation of stacks – Applications: Balancing
symbols – Infix to postfix conversion – Evaluating postfix expressions – Function calls;
Queue ADT: Operations- Queue model – Implementation of queues – Types of Queue-
Applications of queues.
Unit III TREES 9
Tree ADT – Tree Traversals - Binary Tree ADT – Expression trees – Binary Search Tree
ADT – AVL Trees – B Trees- B+ Trees
Unit IV GRAPHS 9
Graph Algorithms: Definitions – Representation of graphs; Graph Traversals: Breadth-first
traversal – Depth-first traversal; Topological sort – Shortest-Path Algorithms: Dijkstra’s
algorithm – All-pairs shortest path.
Unit V SEARCHING, SORTING AND HASHING TECHNIQUES 9
Searching: Linear Search – Binary Search; Sorting: Insertion sort – Shell sort – Radix
Exchange sort; Hashing: Hash function – Separate chaining – Open addressing –
Rehashing – Extendible hashing
TEXT BOOK(S)
Mark Allen Weiss, Data Structures and Algorithm Analysis in C, 2nd Edition,
1.
Pearson Education, 2005.
Kamthane, Introduction to Data Structures in C, 1st Edition, Pearson Education,
2.
2007
3. Reema Thareja, “Data Structures Using C”, Second Edition, Oxford University
Press, 2011
REFERENCE(S)
Langsam, Augenstein and Tanenbaum, Data Structures Using C and C++, 2nd
1.
Edition, Pearson Education, 2015
Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest, Clifford Stein,
2.
Introduction to Algorithms", Fourth Edition, Mcgraw Hill/ MIT Press, 2022.
Alfred V. Aho, Jeffrey D. Ullman,John E. Hopcroft ,Data Structures and Algorithms,
3.
1st edition, Pearson, 2002.
Kruse, Data Structures and Program Design in C, 2nd Edition, Pearson Education,
4.
2006
CO - PO MAPPING
PO
s PO PO PO PO PO PO PO PO PO9 PO10 PO1 PO12 PSO PSO PSO3
1 2 3 4 5 6 7 8 1 1 2
COs
C 3 2 2 2 3 - - - - - - - - 2 -
O1
C 3 2 2 2 3 - - - - - - - - 2 -
C 3 2 2 2 3 - - - - - - - - 2 -
C 3 2 2 2 3 - 1 - - - - - - 2 -
O4
C 3 1 2 2 3 - 1 - - - - - - 2 -
C 3 2 2 2 3 - 1 - - - - - - 2 -
O
Correlation levels: 1: Slight 2: Moderate 3: Substantial (High)
(Low) (Medium)
L T P C
23CS302 OBJECT ORIENTED PROGRAMMING
3 0 0 3
Course Objective(s): The purpose of learning this course is to
To understand basics of Java programming language.
To know the principles of Object Oriented Programming concepts like Encapsulation, Inheritance,
Polymorphism
To define exceptions and Multithreading
To design and build java collections like Generic classes and methods
To know the stack, Queue ,Hashset and Linked Hash set.
Course Outcomes: At the end of this course, learners will be able to:
CO1: Develop program using Object and Classes
CO2: Apply Inheritance and Interface in object oriented application development
CO3: Handle Threads and Exception in Java based application development
CO4: Develop application using Generic classes
CO5: Use Java Collections Classes
UNIT I INTRODUCTION TO JAVA 9
Overview of Java – JVM, JRE, JDK – Portability. Data Types, Variables and Operators – Control
Statements – Loops - Arrays – Strings – String Builder and String Buffer
OOPS INTRODUCTION - ENCAPSULATION, INHERITANCE, POLYMORPHISM,
UNIT II 9
ABSTRACTION, INTERFACES
OOPS Introduction – 4 pillars of OOPS. Object, Class – Constructors – this keyword - Types of
Constructors
Encapsulation – Getter, Setter methods. Inheritance – super keyword – constructor chaining. Types of
inheritance. Polymorphism – Method overloading, Method overriding, Abstraction – extends word. Interface
– implements keyword
UNIT III EXCEPTION HANDLING AND MULTITHREADING 9
Exception Handling basics – Multiple catch Clauses – Nested try Statements – Java’s Built-in Exceptions –
User defined Exception. Multithreaded Programming: Java Thread Model–Creating a Thread and Multiple
Threads – Priorities – Synchronization – Inter Thread Communication- Suspending –Resuming, and
Stopping Threads –Multithreading. Wrappers – Auto boxing.
UNIT IV JAVA COLLECTIONS - I 9
Generics: Generic Programming – Generic classes – Generic Methods – Bounded Types – Restrictions and
Limitations. Array List, LinkedList - Methods
UNIT V JAVA COLLECTIONS - II 9
Collections – Stack, Queue -Set – Hashset, LinkedHashSet -Map – Map, Hashmap, TreeMap,
LinkedHashMap Streams – Map Filter
L: Lecture T: Tutorial P: Practical C: Credits Total 45 Periods
TEXT BOOKS
1. Herbert Schildt, “Java: The Complete Reference”, 11 th Edition, McGraw Hill Education, New Delhi,
2019
2. Herbert Schildt, “Introducing JavaFX 8 Programming”, 1 st Edition, McGraw Hill Education, New Delhi,
2015
REFERENCES
1. Cay S. Horstmann, “Core Java Fundamentals”, Volume 1, 11 th Edition, Prentice Hall, 2018.
2. Balagurusamy, Java Programming with premier, second edition, Tata Mcgraw Hill, 2016.
CO - PO MAPPING
PO
s PO PO PO PO PO PO PO PO PO9 PO10 PO1 PO12 PSO1 PSO PSO
1 2 3 4 5 6 7 8 1 2 3
COs
C 1 1 2 1 2 - - 3 2 2 1 3 1 -
O1
C 2 1 3 2 1 - - - 2 1 1 3 3 2 -
C 3 3 1 2 2 - - - 3 2 1 2 3 1 -
C 3 1 2 2 2 - - - 1 2 1 3 3 1 -
O4
C 1 1 2 3 2 - - - 3 2 1 2 3 3 -
C 2 1 2 2 2 - - - 2 2 1 2 3 2 -
O
Correlation levels: 1:Slight(Low) 3:Substantial(High)
2:Moderate(Medium)
L T P C
23CS303 DATABASE MANAGEMENT SYSTEMS
3 0 0 3
Course Objective (s):
The purpose of learning this course is to
Learn the fundamentals of data models, relational algebra and SQL
Represent a database system using ER diagrams and to learn normalization techniques
Understand the fundamental concepts of transaction, concurrency and recovery
processing
Understand the internal storage structures using different file and indexing techniques
which will help in physical DB design
Have an introductory knowledge about the Distributed databases, NOSQL and database
security
Course Outcomes:
At the end of this course, learners will be able to
CO1:Construct SQL Queries using relational algebra
CO2:Design database using ER model and normalize the database CO -
CO3:Construct queries to handle transaction processing and maintain consistency of the PO
database
CO4:Compare and contrast various indexing strategies and apply the knowledge to tune the
performance of the database
CO5:Appraise how advanced databases differ from Relational Databases and find a suitable
database for the given requirement.
UNIT I INTRODUCTION TO RDBMS 9
History and motivation for database systems; components of database systems; DBMS
functions; database architecture, Relational Algebra – SQL fundamentals – DDL, DML,DCL-
Advanced SQL features – Nested and Join Queries Embedded SQL– Dynamic SQL.
PL/SQL : PL/SQL Basic Block - Functions and Stored Procedures - Triggers – Views -
Exception Handling - Cursor
UNIT II DATABASE DESIGN & NORMALIZATION 10
Entity-Relationship model – E-R Diagrams – Enhanced-ER Model – ER-to-Relational
Mapping – Functional Dependencies – Non-loss Decomposition – Relational Algebra :
Selection and Projection set operations - Renaming - Joins - Division - Examples of Algebra
overviews First, Second, Third Normal Forms, Dependency Preservation – Boyce/Codd
Normal Form – Multi-valued Dependencies and Fourth Normal Form – Join Dependencies
and Fifth Normal Form
UNIT III DATABASE TRANSACTIONS 9
Transaction Concepts – ACID Properties – Schedules – Serializability – Transaction support
in SQL – Need for Concurrency – Concurrency control –Two Phase Locking- Timestamp –
Multiversion – Validation and Snapshot isolation– Multiple Granularity locking – Deadlock
Handling – Recovery Concepts – Recovery based on deferred and immediate update –
Shadow paging –ARIES Algorithm
UNIT IV PHYSICAL DATABASE DESIGN 9
RAID – File Organization – Organization of Records in Files – Data dictionary Storage –
Column Oriented Storage– Indexing and Hashing –Ordered Indices – B+ tree Index Files – B
tree Index Files – Static Hashing – Dynamic Hashing – Query Processing Overview –
Algorithms for Selection, Sorting and join operations – Query optimization using Heuristics -
Cost Estimation.
UNIT V NOSQL 8
NOSQL Databases: Introduction – CAP Theorem – Document Based systems – Key value
Stores – Column Based Systems – Graph Databases. Database Security: Security issues –
Access control based on privileges – Role Based access control – SQL Injection – Statistical
Database security – Flow control – Encryption and Public Key infrastructures – Challenges
L: Lecture T: Tutorial P: Practical C: Credits Total
45 Periods
TEXT BOOK(S)
Abraham Silberschatz, Henry F. Korth, S. Sudharshan, “Database System
1
Concepts”, Seventh Edition, McGraw Hill, 2020.
RamezElmasri, Shamkant B. Navathe, “Fundamentals of Database Systems”,
2
Seventh Edition, Pearson Education, 2017
REFERENCE(S)
MAPPING
PO
s PO PO PO PO PO PO PO PO PO9 PO10 PO1 PO12 PSO1 PSO PSO
1 2 3 4 5 6 7 8 1 2 3
COs
C 2 2 3 2 1 - - - 2 1 1 1 3 2 -
O1
C 3 1 1 1 1 - - - 2 3 3 3 3 1 -
C 3 2 3 2 1 - - - 2 1 1 2 2 2 -
C 1 2 3 2 - - - - 3 2 3 3 1 2 -
O4
C 1 1 3 3 2 - - - 1 3 3 1 2 2 -
C 2 2 3 2 1 - - - 2 2 2 2 2 2 -
O
Correlation levels: 1:Slight(Low) 3:Substantial(High)
2:Moderate(Medium)
L T P C
23CS304 DATABASE MANAGEMENT SYSTEMS LABORATORY
0 0 3 1.5
Course Objective (s):
The purpose of learning this course is to
Learn and implement important commands in SQL.
Learn the usage of nested and joint queries.
Understand functions, procedures and procedural extensions of databases.
Understand design and implementation of typical database applications.
Be familiar with the use of a front end tool for GUI based application development.
Course Outcomes: At the end of this course, learners will be able to:
CO1: Create databases with different types of key constraints.
CO2: Construct simple and complex SQL queries using DML and DCL commands.
CO3: Use advanced features such as stored procedures and triggers and incorporate in GUI
based application development.
CO4: Create an XML database and validate with meta-data (XML schema).
CO5: Create and manipulate data using NOSQL database
LIST OF EXPERIMENTS
1) Create a database table, add constraints (primary key, unique, check, Not null), insert
rows, update and delete rows using SQL DDL and DML commands.
2) Create a set of tables, add foreign key constraints and incorporate referential integrity.
3) Query the database tables using different ‘where’ clause conditions and also implement
aggregate functions.
4) Query the database tables and explore sub queries and simple join operations.
5) Query the database tables and explore natural, equi and outer joins.
6) Write user defined functions and stored procedures in SQL.
7) Execute complex transactions and realize DCL and TCL commands.
8) Write SQL Triggers for insert, delete, and update operations in a database table.
9) Create View and index for database tables with a large number of records.
10) Create an XML database and validate it using XML schema.
11) Create Document, column and graph based data using NOSQL database tools.
Lecture T: Tutorial P: Practical C: Credits
Total 45 Periods
TEXT BOOKS
A. Silberschatz, H. F. Korth& S. Sudershan, Database System concepts, McGraw
1.
Hill, 6th Edition, 2013.
2. C. J. Date, An introduction to Database Systems, Addison Wesley,8th Edition, 2006.
REFERENCE BOOKS
R. Elmasri& S. B. Navathe, Fundamentals of database systems, Addison Wesley,
1.
6th Edition, 2011.
2. H. Garcia et al. Database System implementation, Prentice Hall, 2000
CO - PO MAPPING
PO
s PO PO PO PO PO PO PO PO PO9 PO10 PO1 PO12 PSO1 PSO PSO
1 2 3 4 5 6 7 8 1 2 3
COs
C 3 3 3 3 - - - - 3 1 3 2 3 2 -
O1
C 2 2 3 2 2 - - - 1 2 3 3 2 1 -
C 3 3 2 1 1 - - - 1 1 1 3 3 2 -
C 1 3 3 3 1 - - - 1 1 3 2 3 1 -
O4
C 3 2 1 1 1 - - - 2 2 3 1 2 2 -
C 2 3 2 2 1 - - - 2 1 3 2 2 2 -
O
Correlation levels: 1:Slight(Low) 3:Substantial(High)
2:Moderate(Medium)
L T P C
23CS305 DATA STRUCTURES USING JAVA LABORATORY
0 0 3 1.5
Course Objective (s):
The purpose of learning this course is
To demonstrate array implementation of linear data structure algorithms.
To implement the applications using Linked List and Stack
To implement Binary search tree and AVL tree algorithms
To implement the Heap algorithm, Dijkstra’s algorithm and Prim’s algorithm
To implement Sorting, Searching and Hashing algorithms
Course Outcomes: At the end of this course, learners will be able to:
CO1: Implement Linear data structure algorithms.
CO2: Implement applications using Stacks and Linked lists
CO3: Implement Binary Search tree and AVL tree operations.
CO4: Implement graph algorithms.
CO5: Analyze the various searching and sorting algorithms.
LIST OF EXPERIMENTS
1. Array implementation of Stack, Queue and Circular Queue ADTs
2. Implementation of Singly Linked List
3. Linked list implementation of Stack and Linear Queue ADTs
4. Implementation of Polynomial Manipulation using Linked list
5. Implementation of Evaluating Postfix Expressions, Infix to Postfix conversion
6. Implementation of Binary Search Trees
7. Implementation of AVL Trees
8. Implementation of Heaps using Priority Queues
9. Implementation of Dijkstra’s Algorithm
10. Implementation of Prim’s Algorithm
11. Implementation of Linear Search and Binary Search
12. Implementation of Insertion Sort and Selection Sort
13. Implementation of Merge Sort
14. Implementation of Open Addressing (Linear Probing and Quadratic Probing)
Lecture T: Tutorial P: Practical C: Credits
Total 45 Periods
TEXT BOOKS
1. Mark Allen Weiss, Data Structures and Algorithm Analysis in C, 2nd Edition, Pearson Education,
2005.
2. Robert Lafore, Data Structures and Algorithms in Java, 2nd Edition, SAMS,2002
REFERENCES
1. Thomas H. Cormen, Charles E. Leiserson, Ronald L.Rivest, Clifford Stein, Introduction to Algorithms",
Fourth Edition, Mcgraw Hill/ MIT Press, 2022.
2. Alfred V. Aho, Jeffrey D. Ullman,John E. Hopcroft ,Data Structures and Algorithms, 1st edition,
Pearson, 2002.
3. Data Structures and Algorithms Made Easy in Java, 5th Edition, CareerMonk Publications, 2011
CO - PO MAPPING
PO
s PO PO PO PO PO PO PO PO PO9 PO10 PO1 PO12 PSO1 PSO PSO
1 2 3 4 5 6 7 8 1 2 3
COs
C 1 2 2 1 3 - - - 2 1 2 2 1 2 -
O1
C 3 3 1 1 3 - - - 1 1 1 3 1 2 -
O2
C 2 1 3 1 2 - - - 1 1 2 3 1 2 -
O3
C 3 1 3 3 3 - - - 1 2 3 3 2 2 -
O4
C 3 2 1 1 2 - - - 3 3 3 1 1 2 -
O5
C 2 2 2 1 3 2 2 2 2 1 2 -
O
Correlation levels: 1:Slight(Low) 3:Substantial(High)
2:Moderate(Medium)
L T P C
23CS306 OBJECT ORIENTED PROGRAMMING LABORATORY
0 0 3 1.5
Course Objective (s):
The purpose of learning this course is to
Understand the basics of Object and Classes in java
Demonstrate the use of inheritance, interfaces and packages
Use Exception handling mechanism in Java programming
Handle Multi threads and its inter communication
Apply String and Generic class methods
Develop GUI based application with necessary event handling facility
Course Outcomes: At the end of this course, learners will be able to:
CO1: Apply Object, Classes, static members and Constructors in Java program
CO2: Develop Java application using Inheritance, Interfaces and Packages
CO3: Develop application in Java using Threads and Exception
CO4: Apply String methods and Generic classes in Java Application development
CO5:.Develop GUI and handle necessary events using JavaFX
LIST OF EXPERIMENTS TEXT
1. Develop a Java program using Object , Classes and Constructors BOOKS
1.2. Herbert Schildt, “Java: The Complete
Develop a Java Program using static members Reference”, 11 th Edition, McGraw Hill Education, New Delhi,
2019
3. Develop a Java Program to demonstrate Inheritance
2.4. Herbert
Solve RealSchildt, “Introducing
time problems Java
using FXInterface
Java 8 Programming”, 1 st Edition, McGraw Hill Education, New
Delhi, 2015
5. Develop Java Program to demonstrate packages
REFERENCES
6. Implement exception handling and creation of user defined exceptions in Java
1.7. Cay
WriteS.a Horstmann,
java program that Java
“Core implements a multi-threaded
Fundamentals”, Volumeapplication
1, 11 th Edition, Prentice Hall, 2018.
8. Develop applications to demonstrate the features of generics classes and String class
9. Write a program to perform I/O and file operations in Java
10. Develop applications using JavaFX controls, layouts and menus.
CO - PO MAPPING
PO
s PO PO PO PO PO PO PO PO PO9 PO10 PO1 PO12 PSO1 PSO PSO
1 2 3 4 5 6 7 8 1 2 3
COs
C 2 1 2 1 1 - - - 1 2 2 2 2 2 -
O1
C 2 2 3 2 2 - - - 2 3 3 2 2 2 -
C 2 2 2 2 1 - - - 1 2 1 3 2 2 -
C 2 2 2 3 2 - - - 3 1 1 1 2 2 -
O4
C 2 3 3 1 2 - - - 1 1 2 1 3 2 -
C 2 2 3 2 2 - - - 2 2 2 2 2 2 -
O
Correlation levels: 1:Slight(Low) 3:Substantial(High)
2:Moderate(Medium)