Sr.
Topic Name
No.
1 Find the Maximum and Minimum Elements in an Array: Write a function to find the maximum and minimum
elements in an array.
2 Reverse an Array: Write a function to reverse an array in place.
3 Find the Kth Smallest/Largest Element in an Array: Write a function to find the Kth smallest or largest
element in an array.
4 Implementation of Singly Linked List. Operations on Linked List. Insertion, Deletion, Traversal.
5 Implementation of doubly linked list. Operations on Linked List. Insertion, Deletion, Traversal.
6 Implementation of circular linked list. Operations on Linked List. Insertion, Deletion, Traversal.
7 Implement a Queue Using Arrays/Lists: Write a function to implement a queue using an array or list with
basic operations: enqueue, dequeue, front, and isEmpty.
8 Implement a Queue Using Linked List: Write a function to implement a queue using a linked list with basic
operations: enqueue, dequeue, front, and isEmpty.
9 Implement a Queue Using Stacks: Write a function to implement a queue using two stacks. (vice-versa)
10 Implement a Binary Tree: Write a class to implement a basic binary tree with insert, delete, and traversal
operations.
11 Inorder Traversal: Write a function to perform inorder traversal of a binary tree.
12 Preorder Traversal: Write a function to perform preorder traversal of a binary tree.
13 Postorder Traversal: Write a function to perform postorder traversal of a binary tree.
14 Level Order Traversal: Write a function to perform level order traversal of a binary tree.
15 Implement Graph Using Adjacency List: Write a class to implement a basic graph using an adjacency list with
methods to add vertices and edges.
16 Breadth-First Search (BFS): Write a function to perform BFS on a graph from a given start vertex.
17 Depth-First Search (DFS): Write a function to perform DFS on a graph from a given start vertex.
18 Detect Cycle in an Undirected Graph: Write a function to detect if there is a cycle in an undirected graph.
19 Connected Components in an Undirected Graph: Write a function to find the number of connected
components in an undirected graph.
20 Find MST Using Kruskal’s Algorithm: Write a function to find the Minimum Spanning Tree of a graph using
Kruskal’s algorithm.
21 Find MST Using Prim’s Algorithm: Write a function to find the Minimum Spanning Tree of a graph using Prim’s
algorithm.
22 Activity Selection: Given a set of activities with start and end times, select the maximum number of activities
that do not overlap.
23 Fractional Knapsack Problem: Given weights and values of items and the maximum capacity of a knapsack,
determine the maximum value that can be obtained by including fractions of items.
24 Huffman Coding: Given a set of characters and their frequencies, construct the Huffman Tree to encode the
characters.
25 Job Sequencing Problem: Given a set of jobs, each with a deadline and profit, maximize the total profit by
scheduling the jobs to be done before their deadlines.
26 Minimum Number of Coins: Given different denominations of coins and an amount, find the minimum
number of coins needed to make up that amount.
27 N-Queens Problem: Place N queens on an N
28 Subsets: Generate all possible subsets of a given set of numbers.