0% found this document useful (0 votes)
6 views20 pages

DSA_final

The document outlines the practical assignments for the Data Structures & Algorithms course at Charotar University for the academic year 2024-25. Students are required to register on coding platforms and complete various tasks involving search algorithms, sorting, linked lists, stacks, queues, trees, and graphs. Evaluation will be based on performance in coding challenges, lab sessions, and mid-term practical examinations.

Uploaded by

devsingh.bisht
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)
6 views20 pages

DSA_final

The document outlines the practical assignments for the Data Structures & Algorithms course at Charotar University for the academic year 2024-25. Students are required to register on coding platforms and complete various tasks involving search algorithms, sorting, linked lists, stacks, queues, trees, and graphs. Evaluation will be based on performance in coding challenges, lab sessions, and mid-term practical examinations.

Uploaded by

devsingh.bisht
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/ 20

CHAROTAR UNIVERSITY OF SCIENCE & TECHNOLOGY

FACULTY OF TECHNOLOGY AND ENGINEERING


Smt. Kundanben Dinsha Patel Department of Information Technology
Subject Name: Data Structures & Algorithms Semester: III
Subject Code: IT259 Academic Year: 2024-25
Practical List
(Jun – Dec 2024)

Note:
1. Students have to register in Hacker Rank, LeetCode, GeeksforGeeks coding platforms.
2. Students are instructed to solve challenges given in the Practical List.
3. Internal evaluation of practical would be based on score of the coding platforms, performance in regular lab sessions and performance in mid-
term practical examination.

Sr.
Aim of the Practical Platform Hours
No.
1. 1.1 Implement linear search using iterative and recursive using an array. VS code 2

1.2 Left Rotation on Array


https://www.hackerrank.com/challenges/array-left-rotation/problem?isFullScreen=true HackerRank

1.3 Find All Duplicates in an Array


https://leetcode.com/problems/find-all-duplicates-in-an-array/ Leetcode

Practical Assignment
1.4 Write a program to find non repeating element in an array (Unique element). VS code

2. 2.1 Implement binary search iterative and Recursive using an array. VS code 2

2.2 Implement binary search for a long array of integers to find the required element. However, when the
array size is quite large, the equation for finding the mid index may give the value which is out of range of
integers. Implement the Binary search with a modified equation for finding mid.
“the integer overflow problem” with binary search:
With a vast list of elements, “right” would be a very large value.
Suppose your ‘left’ and ‘right’ are 16 bit unsigned integers. VS code
That means, they can only have a maximum value of 2^16 = 65536.
Example:
Consider: left = 65530 and right = 65531
left + right = 131061 (beyond the integer range). It will give garbage value
It is known as an integer overflow.

Practical Assignment Leetcode


2.3 Kth Missing Positive Number
https://leetcode.com/problems/kth-missing-positive-number/description/
Leetcode
2.4 Search a 2D Matrix II
https://leetcode.com/problems/search-a-2d-matrix-ii/

3. 3.1 Implement Sorting Algorithm(s). VS code 2


(a) Bubble Sort
(b) Selection Sort
(c) Insertion Sort

Practical Assignment Leetcode


3.2 Sort-colors (Leetcode)
https://leetcode.com/problems/sort-colors/

3.3 Sort
https://leetcode.com/problems/sort-an-array/

4. 4.1 Implement following operations of singly linked list. VS code 2


(a) Insert a node at front
(b) Insert a node at end
(c) Insert a node at specific position
(d) Delete a node
(e) Print nodes in Reverse
(f) Traversal of the Linked List
4.2 Remove Nth Node from End of List LeetCode 2
https://leetcode.com/problems/remove-nth-node-from-end-of-list/

4.3 Swap Nodes in Pairs


https://leetcode.com/problems/swap-nodes-in-pairs/

Practical Assignment
4.4 Middle of the Linked List
https://leetcode.com/problems/middle-of-the-linked-list/

4.5 Reverse Linked List


https://leetcode.com/problems/reverse-linked-list/

5. 5.1 Implement following operations of doubly linked list. VS code 2


(a) Insert a node at front
(b) Insert a node at end
(c) Insert a node after given node information
(d) Delete a node at front
(e) Count number of nodes
(f) Traversal of the Linked List

Practical Assignment
5.2 Merge Two Sorted Lists
https://leetcode.com/problems/merge-two-sorted-lists/

5.3 Merge k Sorted Lists


https://leetcode.com/problems/merge-k-sorted-lists/

6. 6.1 Implement stack using array (static stack). GeeksforGeeks 2


https://practice.geeksforgeeks.org/problems/implement-stack-using-array/1

6.2 Implement stack using linked list (dynamic stack).


https://practice.geeksforgeeks.org/problems/implement-stack-using-linked-list/1
7. 7.1 Convert Infix to Postfix HackerRank 2
https://www.hackerrank.com/contests/2022-23-dsa-lab/challenges/convert-infix-expression-to-postfix-
expression-

7.2 Evaluate Reverse Polish Notation


https://leetcode.com/problems/evaluate-reverse-polish-notation/
LeetCode
7.3 Valid Parentheses
https://leetcode.com/problems/valid-parentheses/
8. 8.1 Implement queue using array (static queue). GeeksforGeeks 2
https://practice.geeksforgeeks.org/problems/implement-queue-using-array/1

8.2 Implement queue using linked list (dynamic queue).


https://practice.geeksforgeeks.org/problems/implement-queue-using-linked-list/1

Practical Assignment LeetCode


8.3 Implement Stack using Queues
https://leetcode.com/problems/implement-stack-using-queues/

8.4 Implement Queue using Stacks


https://leetcode.com/problems/implement-queue-using-stacks/

9. 9.1 Implement Binary Tree with following operations. LeetCode 2


(a) Binary Tree Inorder Traversal
https://leetcode.com/problems/binary-tree-inorder-traversal/
(b) Binary Tree Preorder Traversal
https://leetcode.com/problems/binary-tree-preorder-traversal/
(c) Binary Tree Postorder Traversal
https://leetcode.com/problems/binary-tree-postorder-traversal/
(d) Binary Tree Levelorder Traversal
https://leetcode.com/problems/binary-tree-level-order-traversal/
10. 10.1 Implement Binary Search Tree (BST) Insertion Hacker Rank 2
https://www.hackerrank.com/challenges/binary-search-tree-insertion/problem

10.2 Implement searching in Binary Search Tree (BST) LeetCode 2


https://leetcode.com/problems/search-in-a-binary-search-tree/

Practical Assignment
10.3 Kth Smallest Element in a BST
https://leetcode.com/problems/kth-smallest-element-in-a-bst/
11. 11.1 Implement DFS of Graph. GeeksforGeeks 2
https://practice.geeksforgeeks.org/problems/depth-first-traversal-for-a-graph/1

11.2 Implement BFS of Graph. GeeksforGeeks 2


https://practice.geeksforgeeks.org/problems/bfs-traversal-of-graph/1

Practical Assignment
11.3 Detect cycle in an undirected graph
https://www.geeksforgeeks.org/problems/detect-cycle-in-an-undirected-graph/1

12. 12.1 Implementing a Hash Table for Student Records Management VS code 2
Background:
You are tasked with implementing a hybrid hash table to manage student records efficiently. Each student
record consists of a unique student ID (key) and the corresponding student score (data). The hash table will
support two methods of collision handling: separate chaining and linear probing. This flexibility ensures
efficient handling of collisions, enabling you to choose the most suitable method based on different scenarios.
11/8/24, 2:24 PM Your work in 3IT-IT259-DSA (2024-25)

Classroom 3IT-IT259-DSA (2024-25)

23IT012 DEVSINGH BISHT

Returned

Practical : 12 1
7/10
No due date

Practical 11 : Graph 1
7/10
No due date

Practical 10 : Binary Search Tree 1


8/10
No due date

Practical 9 : Tree Data Structure 1


8/10
Due Sep 29, 11:59 PM

Practical 8: Queue 1
8/10
No due date

Practical 7 : Stack 1
8/10
No due date

Practical 6 : Stack 1 1 8/10


Due Aug 26 Done late

Practical 5 : DLL 1
9/10
No due date

Practical 4 : Singly Linked List 1 9/10


Due Aug 4, 11:59 PM Done late

Singly Linked List (3IT1) 8/10


No due date

Practical 3 : Sorting 1 8/10


Due Jul 21, 11:59 PM Done late

Array Data Structure (3IT1) 18/20


No due date

Practical 2 : Searching and Array 1 8/10


Due Jul 14, 11:59 PM Done late

Practical 1 : Array 1
8/10
Due Jul 7, 11:59 PM

https://classroom.google.com/c/NjkwNDY2NzQ4ODcy/sp/NjM4ODgxNTU0NjY5/g/default 1/1
Students’ Self-Assessment Report on Seminar Delivered
Student ID & Devsingh Bisht Date 8/10/24
Name
23IT012
Topic B+ Tree
Semester, Course 3rd
Code and Course
Title IT259
Data Structure & Algorithms
Photo

Self-Assessment 4 - Perfect 3 – Needs Minor 2 – Needs Major 1 – Not Satisfied


Rank yourself Improvement Improvement
between 4 to 1
Command on

English
Preparedness

Technical

Knowledge
Confidence

Student Sign Teacher In charge Head

Name & Roll Number Name Parth Shah

You might also like