KIET Group of Institutions
M.C.A.
Department of Computer Applications
Detailed Syllabus (2025-26)
Theory Course Code: Theory Course Name: Data Structures Using Java L T P C
CA301B
2 0 4 4
Pre-requisite: Understanding of programming language Java with all basic concepts.
Course Objectives:
To build a strong foundation in fundamental data structures and their implementation using Java.
To understand the importance of data structures in developing efficient and optimized programs.
To develop problem-solving skills by selecting and applying appropriate data structures and algorithms.
Course Outcome:
Tagging COs with BLs & KCs
CO No. Statement of Course Outcome Knowledge
Bloom’s Cognitive
Category
After completion of the course, the student will be able to Process Level (BL)
(KC)
Explore fundamental data structures, Java collections, arrays,
CO1 4 C,P
strings, stacks, queues, and basic problem-solving techniques.
Illustrate recursion, searching, sorting, backtracking, and hashing C,P
CO2 4
techniques to solve computational problems.
Relate linked lists and tree-based data structures with standard C,P
CO3 4
operations and traversals.
Explore advanced data structures such as heaps, priority queues, C,P
CO4 4
segment trees, tries, and graphs.
Figure out efficient solutions using divide-and-conquer, greedy, C,P
CO5 4
and dynamic programming approaches.
CO-PO Mapping (Scale 1: Low, 2: Medium, 3: High):
CO-PO Mapping PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8
CO1 3 2 2 3 1 – 1 2
CO2 3 3 2 2 1 – 1 2
CO3 3 3 3 2 1 – 1 2
CO4 3 3 3 3 1 – 1 2
CO5 3 3 3 2 1 – 1 3
Detailed Syllabus
Unit 1 Fundamentals of Data Structure 12 hours
Introduction: Data Structure, types of Data Structure, Algorithm, Abstract Data Types (ADTs), Analysis of
an algorithm.
Introduction to Java Collections Framework: Overview of [Link] package, List, Array, Vector, Stack, Set,
Map, Queue.
Arrays: Declaration, Initialization, sparse matrix, Traversal of ID and 2D arrays.
Strings: String manipulation functions without using built-in libraries
Stacks: Stack implementation using arrays, Infix to Postfix, Postfix Evaluation,
Queues: Simple Queue, Circular Queue, Deque (Double-ended queue), ArrayDeque.
Fundamental problem-solving techniques. Sliding Window Technique, Two Pointer Technique.
KIET Group of Institutions
Practical:
1. Implement insertion and traversal operation of different containers using collection framework.
2. Write a program to implement two sum problem.
3. Write a program to find out, is there any duplicate value in array or not.
4. Write a program to find the subarray with the largest sum and return its sum.
5. Implement string related problem i.e. anagram check, palindrome check.
6. Implementation of Stack, Queue and related problem, Nearest Greater/Smaller Element problems
7. Problem solving using Sliding window and two pointer approach
Unit 2 Recursion, Sorting and Searching 12 hours
Recursion: Basics of Recursion, Types of Recursions and Tower of Hanoi.
Backtracking: 4-Queens, Maze Raze problem.
Searching: Linear, Index, Binary Search, Search in Rotated Array, First/Last Occurrence
Sorting: Bubble, Selection, Insertion, Merge Sort and Quick Sort.
Hashing: Hash Map, Hash Table, Hash Function, Collision Removal, Rehashing
Practical:
1. Write a program to implement Factorial, Fibonacci series and Tower of Hanoi using recursion.
2. Implementation of binary search and its related problems
3. Implement backtracking concept
4. Implement above mentioned sorting techniques
5. Implement hash map related question
Unit 3 Basic Data Structures 12 hours
Linked Lists: Singly and Doubly Linked Lists, Creation, Insertion, Deletion, Traversal, Reversal, Detect and
Remove Loop (Floyd's Cycle), Merge two sorted lists
Trees: Binary Tree, Memory representation of Binary trees using array and linked list, Types of Tree, and
Binary Search Tree, Tree Traversals (Inorder, Preorder, Postorder, Level Order), LCA (Lowest Common
Ancestor).
Balanced Trees: AVL Tree, B Tree.
Practical:
1. Write a program that uses functions to perform the following operations on singly linked list i) Creation ii)
Insertion iii) Deletion iv) Traversal.
2. Write a program to reverse a linked list.
3. Write a program that uses functions to perform the following operations on doubly linked list i) Creation
ii) Insertion iii) Deletion iv) Traversal.
4. Implement basic tree operations and Tree traversal
5. Implement tree related problem
Unit 4 Advance Data Structures 12 hours
Heap: Min/Max, Heap sort.
Priority Queue: Definitions, Operations, Implementation in arrays and heaps, Applications.
Segment Trees: Structure and Concept, Operations, Variants and Applications
Tries: Introduction, Operations, Variations and Applications
Graphs: Introduction to graphs, Basic terminology of Graphs, Memory Representations, Graph Traversal
Algorithms like BFS and DFS.
Practical:
1. Write a program to implement Heap Sort.
2. Create a min-heap and implement priority queue operations.
KIET Group of Institutions
3. Implementation of priority queues with arrays and heaps.
4. Implementation of segment trees through range-based problems.
5. Implementation of tries through string-based problems.
6. Implementation of graphs and solve problems using BFS and DFS.
Unit 5 Problem Solving Techniques 12 hours
Introduction of different problem-solving approaches: Top-down and Bottom-up approaches.
Divide and Conquer: Definition, Standard Algorithms, Closest Pair of Points, Maximum Subarray Sum,
Array sequencing problems
Greedy Algorithms: Minimum Spanning Tree using Prim’s and Kruskal’s, Single Source Shortest Path using
Dijkstra Algorithm.
Dynamic Programming: Longest Common Subsequence, Knapsack problem.
Practical:
1. Implement array sequencing problems using divide and conquer approach.
2. Implement tree and structural problems using divide and conquer approach.
3. Implementation of Prim’s and Kruskal’s Algorithms
4. Implement problems related to Dijkstra algorithm.
5. Implement longest common subsequence problem using dynamic approach.
6. Implementation of Longest Increasing Subsequence.
Total Lecture Hours 60 hours
Textbook:
1. Data Structures and Algorithms Made Easy by Narasimha Karumanchi (Java version), CareerMonk
Publications, 2016.
2. Introduction to Algorithms by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford
Stein, 3rd Edition, MIT Press, 2009.
3. Seymour Lipschutz, Data Structures, Revised First Edition, Schaum's Outline Series, McGraw Hill
Education India, 2017.
4. Anany Levitin, Introduction to the Design and Analysis of Algorithms, 3rd Edition, Pearson Education,
2012.
Reference Books:
1. Michael T. Goodrich, Roberto Tamassia, and Michael H. Goldwasser, Data Structures and Algorithms in
Java, 6th Edition, Wiley India, 2014.
2. Robert Lafore, Data Structures and Algorithms in Java, 2nd Edition, Sams Publishing, 2002.
3. Peter Drake, Data Structures and Algorithms in Java, 1st Edition, Pearson Education, 2006.
Mode of Evaluation:
MSE CA ESE Total Marks
CA3
CA4
MSE1 MSE2 CA1 CA2 (Attendance
) 100 200
40 40 8 8 4
80 20
CA4: Participation in any Hackathon, National/International Activity or Research Paper Publication.