0% found this document useful (0 votes)
63 views15 pages

DS Final - COURSEPACK - Integrated-Latest (25-10-23)

The document provides information about a course on data structures. It includes details such as the course code, credits, instructors, objectives, outcomes, and alignment with program outcomes. Specifically, the course aims to introduce students to data structures like arrays, lists, stacks, queues and trees. Students will learn to implement these structures in Java and solve computing problems using multiple data structures. The course outcomes include developing programs for traversal, searching and sorting of arrays/lists, and implementing various data structures in Java.

Uploaded by

Noorgul Raza
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)
63 views15 pages

DS Final - COURSEPACK - Integrated-Latest (25-10-23)

The document provides information about a course on data structures. It includes details such as the course code, credits, instructors, objectives, outcomes, and alignment with program outcomes. Specifically, the course aims to introduce students to data structures like arrays, lists, stacks, queues and trees. Students will learn to implement these structures in Java and solve computing problems using multiple data structures. The course outcomes include developing programs for traversal, searching and sorting of arrays/lists, and implementing various data structures in Java.

Uploaded by

Noorgul Raza
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/ 15

COURSEPACK

SCHEME
The scheme is an overview of work-integrated learning opportunities and gets students out
into the real world. This will give what a course entails.

Course Title DATA STRUCTURES Course Type Integrated


Course Code E2UC303B Class B.Tech - 2nd Year
Activity Credits Weekly Hours Total Number of Assessment in
Classes per Semester Weightage
Lecture 3 3
Instruction 0 0

Practical
Practical
Tutorial

Tutorial
Theory
delivery

study
Self-

SEE
CIE
Practical 1 2
Self-study 7
Total 4 12 45 30 105 50% 50%

Course Lead Mr. Anil Gankotiya Course Mr. Pradeep Chauhan


Coordinator
Names Theory Practical
Course Dr Gaurav Agarwal Dr Gaurav Agarwal
Instructors Dr Arvind Dagur Dr Arvind Dagur
Ms Ambika Gupta Ms Ambika Gupta
Dr Anu Bala Dr Anu Bala
Mr Baldivya Mitra Mr Baldivya Mitra
Mr Damodharan D Mr Damodharan D
Mr Dewan Imdadul Islam Mr Dewan Imdadul Islam
Mr Gautam Kumar Mr Gautam Kumar
Mr Geetika Sharma Mr Geetika Sharma
Mr K. Rajkannan Mr K. Rajkannan
Ms Kimmi Gupta Ms Kimmi Gupta
Dr. Mili Dhar Dr. Mili Dhar
Ms Mohd. Arquam Ms Mohd. Arquam
Dr Pooja Dr Pooja
Ms Pragya Agarwal Ms Pragya Agarwal
Ms R. Radhika Ms R. Radhika
Ms R. Sathiya Priya Ms R. Sathiya Priya
Dr Radha Rani Dr Radha Rani
Mr Sachin Kumar Tyagi Mr Sachin Kumar Tyagi
Ms Vaishali Gupta Ms Vaishali Gupta
Mr Anurag Maurya Mr Anurag Maurya
Mr Gopal Chandra Jana Mr Gopal Chandra Jana
Mr Gaurav Vinchurkar Mr Gaurav Vinchurkar
Dr Pooja Singh Dr Pooja Singh
Dr. Arshad Husain Dr. Arshad Husain
COURSEPACK |
FORMAT
Mr Mandeep Kumar Mr Mandeep Kumar
Mr Neeraj Kr Bharti Mr Neeraj Kr Bharti

COURSE OVERVIEW
Data structures are one of the foundation subjects for the computer science program. This
course enables the students to understand and apply the concepts of Linear Data Structure and
Non-linear Data Structure approaches in different scenarios of information processing and
storing and organizing data in a computer's memory so that these data can be used efficiently
later. It includes identifying the issue in that particular scenario required to deal with the data
structures approaches, considering several techniques to address it, and selecting the best data
structure to store, organize, and efficiently use the stored data. In this course, Data structures
include- Array, lists, stacks, queues, trees, and graphs. The Java programming language will be
used to demonstrate the concepts discussed in the lecture, and programming problems must
be completed in Java.

PREREQUISITE COURSE

PREREQUISITE COURSE REQUIRED YES

If, yes please fill in the Details Prerequisite course name


 Object Oriented Programming
 C Programming

COURSE OBJECTIVE
This course will introduce students to searching and sorting as well as data structures like stack,
queue, and binary tree. Students will write many programs around these topics during this
course.

COURSE OUTCOMES (COs)

After the completion of the course, students will be able to:


CO No. Course Outcomes
E2UC303B.1 Develop programs for functions like traversal, searching, and sorting over Arrays
and Linked Lists using iterative and recursive techniques.
E2UC303B.2 Convert iterative programs using Arrays and Linked Lists into equivalent Recursive
versions and vice versa.
E2UC303B.3 Implement Stack, Queue, and Binary Tree data structures in Java using Array and
Linked Structures.
E2UC303B.4 Develop Java programs to solve computing problems using multiple data structures
(Stack, Queue, and Binary Tree).

COURSEPACK |
FORMAT
BLOOM’S LEVEL OF THE COURSE OUTCOMES

INTEGRATED
Remember Understand Apply Analyse Evaluate Create
CO No.
KL1 KL 2 KL 3 KL 4 KL 2 KL 6
E2UC303B.1 √
E2UC303B.2 √
E2UC303B.3 √
E2UC303B.4 √ √

PROGRAM OUTCOMES (POs):


PO1 Computing Science knowledge: Apply the knowledge of mathematics, statistics,
computing science and information science fundamentals to the solution of complex
computer application problems.
PO2 Problem analysis: Identify, formulate, review research literature, and analyze
complex computing science problems reaching substantiated conclusions using first
principles of mathematics, natural sciences, and computer sciences.
PO3 Design/development of solutions: Design solutions for complex computing problems
and design system components or processes that meet the specified needs with
appropriate consideration for the public health and safety, and the cultural, societal, and
environmental considerations.
PO4 Conduct investigations of complex problems: Use research-based knowledge and
research methods including design of experiments, analysis and interpretation of data,
and synthesis of the information to provide valid conclusions.
PO5 Modern tool usage: Create, select, and apply appropriate techniques, resources,
and modern computing science and IT tools including prediction and modeling to complex
computing activities with an understanding of the limitations.
PO6 IT specialist and society: Apply reasoning informed by the contextual knowledge to
assess societal, health, safety, legal and cultural issues and the consequent
responsibilities relevant to the professional computing science and information science
practice.
PO7 Environment and sustainability: Understand the impact of the professional
computing science solutions in societal and environmental contexts, and demonstrate the
knowledge of, and need for sustainable development.
PO8 Ethics: Apply ethical principles and commit to professional ethics and responsibilities
and norms of the computing science practice.
PO9 Individual and team work: Function effectively as an individual, and as a member
or leader in diverse teams, and in multidisciplinary settings.
PO10 Communication: Communicate effectively on complex engineering activities with
the IT analyst community and with society at large, such as, being able to comprehend
and write effective reports and design documentation, make effective presentations, and
give and receive clear instructions.

COURSEPACK |
FORMAT
PO11 Project management and finance: Demonstrate knowledge and understanding of
the computing science and management principles and apply these to one’s own work,
as a member and leader in a team, to manage projects and in multidisciplinary
environments.
PO12 Life-long learning: Recognize the need for, and have the preparation and ability
to engage in independent and life-long learning in the broadest context of technological
change.

Program Specific Outcomes:


PSO1 Have the ability to work with emerging technologies in computing requisite to
Industry 4.0.
PSO2 Demonstrate Engineering Practice learned through industry internship and
research projects to solve live problems in various domains.

COURSE ARTICULATION MATRIX


The Course articulation matrix indicates the correlation between Course Outcomes and Program
Outcomes and their expected strength of mapping in three levels (low, medium, and high).

PO10

PO11

PO12

PSO1

PSO2
COs#/ POs
PO1

PO2

PO3

PO4

PO5

PO6

PO7

PO8

PO9
E2UC303B.1 1 1 1 - - - - - - - - - - -

E2UC303B.2 1 - - - - - - - - - - - - -

E2UC303B.3 1 - - - - - - - - - - - - -

E2UC303B.4 2 2 2 - 2 - - - 1 - - 1 - -

Note: 1-Low, 2-Medium, 3-High

COURSE ASSESSMENT
The course assessment patterns are the assessment tools used both in formative and summative
examinations.

Assessment CIE Total Marks Final Marks


Tools LAB @ (Work MTE LAB EXAM* CIE SEE CIE * 0.5 +
+ Record) SEE * 0.5
Integrated 25 50 25 100 100 100

@ Lab Work – 15 marks + Lab record – 10 marks

* Passing criteria – 30% of marks to be secured in the lab exam conducted by two examiners
(one internal + one external).

COURSEPACK |
FORMAT
COURSE CONTENT

Introduction: Basic Terminology, Types and application of Data Structures, Algorithm, Efficiency
of an algorithm, Time-space trade-off and complexity, asymptotic notation.
Array: Single and Multidimensional Arrays, Representation of Arrays: Row Major Order, and Column
Major Order, Derivation of Index Formulae for 1-D,2-D, and multi-D Array, Application of arrays,
Sparse Matrices, and their representations, arithmetic operations on matrices.
Recursion: Tail recursion, Head Recursion, Nested recursion, Removal of recursion. Problem
solving using iteration and recursion with examples such as Fibonacci numbers, and Hanoi towers.
Trade-offs between iteration and recursion.
Searching & Sorting: Linear search, Binary Search, Indexed Sequential search, Hashing, Insertion
Sort, Bubble sort, Selection sort, Quick Sort, Merge Sort.
Linked lists: Introduction, Singly Linked Lists, Doubly Linked List, Circularly Linked List, Operations
on a Linked List. Insertion, Deletion, Traversal, Reversing, Application of Linked List: Polynomial
Representation, Addition and Multiplication, Generalized Linked List.
Stack: Introduction, Abstract Data Type, Primitive Stack operations: Push & Pop, Array and Linked
List Implementation of Stack, Application of Stack: Prefix and Postfix Expressions, Evaluation of
postfix expression.
Queue: Introduction, Operations on Queue: Create, Add, Delete, Full and Empty, Circular queues,
Array and linked implementation of queues, Double Ended queue, and Priority Queue.
Trees: Binary Tree and Its array and linked list representation, Strict Binary Tree, Complete Binary
Tree, Tree Traversal algorithms: In-order, Pre-order, and Post-order, level order, Constructing
Binary Tree from given Tree Traversal, BST Operation: Searching, Insertion, Deletion, Threaded
Binary Trees, Traversals in Threaded Binary Trees, Heaps, Heap Sort.
Graph-Introduction to graph, Concepts, and representation.

COURSEPACK |
FORMAT
LESSON PLAN FOR COMPREHENSIVE COURSES
FOR THEORY 15 weeks * 3 Hours = 45 Classes) (1credit = 1Lecture Hour)
FOR PRACTICAL 15 weeks * 2Hours = 30 Hours lab sessions (1 credit = 2 lab hours)

Theory /
Tutorial
L-
Topic for Delivery / Skills Competency
No
Practical
Plan
1 Basic Terminology, Types Data Structures Theory
2 Application of Data Structures Theory
th
Write a program to insert an element in i
3 position of the array.
Practical Develop
th
Write a program to delete i element of the programs by
4 array. using the array
concept and CO1
5 Algorithm, Efficiency of an algorithm Theory examining the
6 Time-space trade-off and complexity Theory temporal
Asymptotic notation Theory complexity.
7
8 Write a program to rotate an array.
Write a program to move all zeros to the Practical
9 beginning/end of an array.

10 Single and Multidimensional Arrays Theory

Representation of Arrays: Row Major Order, and


11 Theory
Column Major Order
Write a program to reverse an array without using
12 an additional array.
Practical Develop
Write a program to find the second largest matrices to
13 element in an array of integers. implement
various array
14 Sparse Matrices, and their representations Theory operations and CO1, CO2
matrix
arithmetic.
15 Arithmetic operations on matrices Theory

Write a Program to find the sum of an upper


16 triangular matrix.
Practical
Write a Program to check whether a matrix is
17 sparse or not.
18 Tail recursion, Head Recursion Theory Develop
19 Nested recursion, Removal of recursion Theory problems

COURSEPACK |
FORMAT
Write a recursive program to print an array in through
20 reverse order. Practical recursion and
change
21 Write a recursion Program to find a^b.
iterative
Problem-solving using iteration and recursion with programs
22 Theory
examples such as Fibonacci numbers into recursive
ones and vice
23 Hanoi towers Theory versa.

24 Trade-offs between iteration and recursion Theory

Write a recursive program to find the factorial of


25 a given number.
Practical
Write a recursive program to find the nth
26 Fibonacci number.

27 Linear search, Binary Search Theory

Develop
28 Indexed Sequential search, Hashing Theory programs for
different
Write a program to search an element in an array searching
29 using binary search. (Iteration) techniques.
Practical
Write a program to search an element in an array
30 using binary search. (recursion)

31 Insertion Sort, Bubble sort, Selection sort Theory

Develop
32 Quick Sort Theory programs for
different
33 Merge Sort Theory sorting
techniques.
34 Write a Program to implement bubble sort.
Practical
35 Write a Program to implement selection sort.

36 Linked lists: Introduction Theory

37 Singly Linked Lists Theory


Develop a
Write a program to implement a linked list by linked list
38 adding or removing elements from the last. and its
Practical various
Write a program to implement linked list by
applications.
39 adding or removing elements from the first
position.

40 Doubly Linked List Theory

COURSEPACK |
FORMAT
41 Circularly Linked List Theory

Write a program to implement a doubly linked


42 list.
Practical
Write a program to implement a circular linked
43 list.

44 Operations on a Linked List: Insertion, Deletion Theory

45 Operations on a Linked List: Traversal, Reversing Theory

Write a program to implement a linked list by


46 adding or removing elements at a given position.
Practical
Write a program to count the number of elements
47 in a linked list.
Application of Linked List: Polynomial
48 Theory
Representation
Application of Linked List: Addition and
49 Theory
Multiplication of polynomial

50 Generalized Liked list Theory

Write a program to find the largest element in a


51 linked list. Practical
52 Write a program to reverse a linked list.
53 Introduction, Abstract Data Type, Theory CO3
Primitive Stack operations: Push & Pop using
54 Theory
Array
Write a program to implement a stack using an
55 array.
Practical CO1, CO3
Write a program to find the largest number in the
56 Develop basic
stack.
stack
57 Implementation of Stack using Linked List Theory operations
and its
Application of stack: Prefix and Postfix applications.
58 Theory CO3, CO4
Expressions, Evaluation of postfix expression
Write a program to implement a stack using a
59 linked list. CO1, CO3,
Practical
Write a program to convert infix expression into CO4
60 postfix expression.
Queue: Introduction, Operations on Queue: Develop basic
61 Theory CO1, CO3
Create, Addition queue

COURSEPACK |
FORMAT
operations
62 Operations on Queue: Delete, Full and Empty Theory and its
applications.
Write a Program to implement a queue using an
63 array.
Practical
Write a Program to implement a queue using a
64 linked list.
Array and Linked List implementation of Queue
65 Theory
and Circular Queues
Array and Linked List implementation of Dqueue
66 Theory
and Priority Queues
Write a program to find the smallest number the
67 in queue.
Practical
Write a program to implement a Circular Queue
68 using an array.
Trees: Binary Tree, and Its array and linked list
69 Theory
representation

70 Strict Binary Tree, Complete Binary Tree Theory

Write a program to implement a binary tree using


71 array.
Practical
Write a program to implement a binary tree using
72 linked list.
Tree Traversal algorithms: In-order, Pre-order and
73 Theory Develop the
Post-order and Level Order
BST tree
Constructing Binary Tree from given Tree
74 Theory using linked
Traversal
lists and
Write a program to print the pre-order traversal CO3, CO4
75 arrays with
of a tree. its various
Practical
Write a program to print the post-order traversal operations.
76 of a tree.

77 BST Operation: Searching, Insertion, Deletion Theory

Threaded Binary Trees, Traversals in Threaded


78 Theory
Binary Trees
Write a program to implement a binary search
79 tree.
Practical
Write a program to print in order traversal of a
80 Threaded Binary tree.
81 Heaps, Heap Sort Theory

COURSEPACK |
FORMAT
Write a Program to implement heap sort using an
82 Practical
array.

83 Graph-Introduction to graph Theory Develop Heap


tree and
84 Concepts and Representation of Graph Theory Heap sort. CO1, CO2

Write a program to implement a graph using the


85 Practical
array.

BIBLIOGRAPHY

Text Book
1. Aaron M. Tenenbaum, Yedidyah Langsam and Moshe J. Augenstein “Data
Structures”.
2. Sahni Sartaj, “Data structures, algorithms, and applications in Java”, McGraw-Hill
Reference Books
1. Michael T. Goodrich; Roberto Tamassia; Michael H. Goldwasser; Subhasish
Banerjee “Data Structures and Algorithms in Java”, Wiley.
2. Jean Paul Trembley and Paul G. Sorenson, “An Introduction to Data Structures with
applications”, McGraw Hill
3. James Cutajar “Beginning Java Data Structures and Algorithms”, O’Reilly.
4. John Hubbard "Data Structures with Java" Schaum's Outline Series.
5. Narasimha Karumanchi "Data Structures and Algorithms Made Easy in Java"
CareerMonk
Webliography
1. https://cse.iitkgp.ac.in/~dsamanta/javads/index.htm
2. https://www.geeksforgeeks.org/data-structures/
3. https://www.javatpoint.com/data-structures-in-java
4. https://www.programiz.com/dsa
5. https://www.w3resource.com/
6. https://www.javaguides.net/p/data-structures-and-algorithms-in-java.html
SWAYAM/NPTEL/MOOCs Certification
1. Data Structure and Algorithms using Java
URL: https://archive.nptel.ac.in/courses/106/105/106105225/
2. Data Structures and Algorithms In Java (DSA)
URL: https://www.udemy.com/course/data-structures-and-algorithms-in-
java/
COURSEPACK |
FORMAT
3. Object Oriented Java Programming: Data Structures and Beyond
Specialization
URL: https://www.coursera.org/specializations/java-object-oriented
4. Introduction to Data Structures & Algorithms in Java (LinkedIn)
URL: https://www.linkedin.com/learning/introduction-to-data-structures-
algorithms-in-java
5. Data Structures and Algorithms – Self Paced (GeeksforGeeks)
URL: https://practice.geeksforgeeks.org/courses/dsa-self-paced

PRACTICE PROBLEMS:

S.No. Problems
Write a program to find the number of elements in the largest increasing sequence
1
in an array.
2 Write a program to remove duplicates from an array.
3 Write a Program to find the transpose of a matrix.
4 Write a program to find the second smallest element in a linked list.
Write a program to check whether doubly linked list elements make palindrome or
5
not.
Given an array, arr[2………11][5………20] with base value 200, and the size of each
6 element is 2 Byte in memory. Find the address of arr[7][11] with the help of row-
major order.
Given an array, arr[2:11, -3:4, 7:18] with a base value of 300 and the size of each
7 element is 3 Bytes in memory find the address of element arr[4][-2][12] with the
help of row-major order?
8 Write a program to calculate the average value of array elements.
9 Write a program to find the Middle Element of a Linked List in a single traversal.
A circular queue has a size of 5 and has 3 elements 10,20 and 40 where F=2 and
R=4. After inserting 50 and 60, what is the value of F and R. Trying to insert 30 at
10
this stage what happens? Delete 2 elements from the queue and insert 70, 80 & 90.
Show the sequence of steps with necessary diagrams with the value of F & R.
Construct an expression tree for the expression (a+b*c) + ((d*e+f)*g). Give the
11
outputs when you apply in-order, preorder, and post-order traversals.
Given input {4371, 1323, 6173, 4199, 4344, 9679, 1989} and a hash function h(x) =x
12 mod 10. Prepare the results for the following: i) Open addressing hash table using
linear probing. (ii)Open addressing hah table using quadratic probing.
Write a bubble sort program with a condition that its best-case complexity will be
13
O(n).
14 Write a program to merge two sorted arrays in a single array.
15 Write a program to reverse elements of the queue using stack.
16 Write a recursive program to find the greatest common divisor of two numbers.
COURSEPACK |
FORMAT
Develop a program to merge two sorted linked lists (P & Q). Assume that they are
17
available to get a single sorted list S. Eg. P:1->2->45->56 Q:3->24->56->63->66
18 Evaluate the postfix expression 10 5 + 60 6/ * 8 -
Drive a formula to calculate the address of a 3-dimensional array in column-major
19
order.
20 Implement Queue using two stacks.
Data are pushed to (PUSH operation) and popped from (POP operation) a stack in
the following order: PUSH 3; TOP; PUSH 7; TOP; PUSH 6; PUSH 9; TOP; POP; POP;
21
TOP; where the PUSH, POP, and TOP are the standard operations of the stack.
Write the values returned by TOP for the sequence of operations above.
Let A be a square matrix of size n x n. Consider the following program. What is the
expected output?
C = 100
for i = 1 to n do
for j = 1 to n do
{
22 Temp = A[i][j] + C
A[i][j] = A[j][i]
A[j][i] = Temp – C
}
for i = 1 to n do
for j = 1 to n do
Output(A[i][j]);
Following pseudo code of a function that takes a number as an argument, and uses
a stack S to do processing. What is the expected output?
void fun(int n)
{
Stack S; // Say it creates an empty stack S
while (n > 0)
{
// This line pushes the value of n%2 to stack S
push(&S, n%2);
23 n = n/2;
}
// Run while Stack S is not empty
while (!isEmpty(&S))
printf("%d ", pop(&S)); // pop an element from S and print it

COURSEPACK |
FORMAT
Following pseudo-code of a function that takes a Queue as an argument, and uses a
stack S to do processing. What is the expected output?
void fun(Queue *Q)
{
Stack S; // Say it creates an empty stack S
// Run while Q is not empty
while (!isEmpty(Q))
{
// deQueue an item from Q and push the dequeued item to S
24
push(&S, deQueue(Q));
}
// Run while Stack S is not empty
while (!isEmpty(&S))
{
// Pop an item from S and enqueue the popped item to Q
enQueue(Q, pop(&S));
}
}
25 Write a program to reverse the number using stack.
26 Write a program to reverse a stack using recursion, without using any loop.
27 Write a program to reverse a string using stack.
Convert the following Infix expression into a Postfix expression using the Tabular
28
method. a – b / c * d + e * f / g
Write a program to find the length of the longest consecutive elements sequence
from an unsorted array of integers.
29 Sample array: [49, 1, 3, 200, 2, 4, 70, 5]
Let, the longest consecutive elements sequence is [1, 2, 3, 4, 5], therefore the
program will return its length 5.
What is the output of quick sort after the 3rd iteration given the following
30
sequence? 24 56 47 35 10 90 82 31
31 Implement two stacks in a single array.
The following postfix expression is evaluated using a Stack:
32 8 2 3 ^ / 2 3 * + 5 1 * – ^ is an exponential operator, find out the top two elements
after * on the top of the stack.
33 Write a program to get the nth element from the bottom of the stack.
34 Write a program to convert Decimal to binary using recursion.
35 Solve Tower of Hanoi problem with 5 disks and three pegs. (Show all steps)
36 Write a recursive program to find the sum of digits of given numbers.
Write a program to find all pairs of elements in an array whose sum is equal to a
37
specified number.
38 Write a program to convert binary to decimal using recursion.
39 Write a recursive method to calculate the product of all numbers in an array.

COURSEPACK |
FORMAT
Construct a MAX-HEAP tree for the following nodes: 70, 60, 50, 40, 30, 20, 5, 1, 7,
40
80, 90
How many minimum number of swap operations are needed to convert the
41 following array into the heap with maximum element at root: 89, 19, 40, 17, 12,
10, 2, 5, 11, 6, 9, 70
What would be the post-order of the tree if preorder and in-order traversals are
42
given: PREORDER: ABDECFG, INORDER: DBEAFCG
Write a program to implement a stack and move the nth element from the top of
43
the stack to the top.
A Binary Search Tree contains the following Pre-order: 5, 3, 1, 2, 4, 6, 8, 7. What
44
will be the Post-order?
Simulate the result of inserting 2, 1, 4, 5, 9, 3, 6, and 7 into an initially empty BST
45
Tree.
Write a recursive method to check whether the given array is sorted in ascending
46
order or not.
47 Write a program to check whether elements of Dequeue make palindrome or not.
48 Write a Program to implement stack using the queue data structure.
49 Write a Program to reverse Queue using recursion.
50 Write a Program to count the number of elements in a queue.
51 Write a program to check whether two trees are identical or not.
Write a program to implement Collision resolution in the Hash table using linear
52
probing.
Write a program to implement Collision resolution in the Hash table using
53
quadratic probing.
54 Write a Program to detect the Cycle in the linked list.
Write a Program to implement quick sort. (The pivot element is the middle
55
element)
56 Write a Program to implement a doubly circular queue.
57 Write a program to sort a given linked list.
58 Write a program to find the height of a tree.
Complete the code for POP out 'n' elements of the stack
static void stack_pop(Stack<Integer> stack)
{
System.out.println("Pop Operation:");

for(……………….)
59 {
Integer y = (Integer) stack.pop();
System.out.println(y);
}

COURSEPACK |
FORMAT
Correct the following code for recursive linear search in the Linked
List
public boolean search(Node head, int x)
{
// Base case
if (head == null)
return true;
60
// If the key is present in the current node,
// return true
if (head.data = x)
return false;
// Recursion for the remaining list
return search(head.next, x);
}

SELF-LEARNING THROUGH MOOCs (Cognitive Skills): Certification


1. https://www.hackerrank.com
2. https://www.codechef.com
3. https://exercism.org/
4. https://www.codewars.com/
5. https://www.topcoder.com/
6. https://www.coderbyte.com/

COURSEPACK |
FORMAT

You might also like