0% found this document useful (0 votes)
8 views2 pages

ADSA 5th Unit Assignment

This document is an assignment for BCA IVth Semester students at JECRC University, focusing on Advanced Data Structures and Algorithms. It outlines the course outcomes, instructions for submission, and includes three sections of questions covering topics such as graph theory, sorting algorithms, and search techniques. Students are required to provide detailed answers, examples, and implement algorithms in Python.

Uploaded by

Nitin Agarwal
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)
8 views2 pages

ADSA 5th Unit Assignment

This document is an assignment for BCA IVth Semester students at JECRC University, focusing on Advanced Data Structures and Algorithms. It outlines the course outcomes, instructions for submission, and includes three sections of questions covering topics such as graph theory, sorting algorithms, and search techniques. Students are required to provide detailed answers, examples, and implement algorithms in Python.

Uploaded by

Nitin Agarwal
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/ 2

JECRC University, Jaipur

School of Computer Applications


Assignment 5, May 2024
BCA IVth Semester
Subject Name: - Advance Data Structure and Algorithm
Course Code: BCA411

Maximum Marks: 64

Course Outcomes (COs):


CO1:To impart the basic concepts of Tree data structures.
CO: 2. To understand concepts about Binary search
Techniques
CO: 3. To understanding about searching.
CO: 4. To impart the basic concepts sorting techniques.
Note: Late submissions will not be accepted and will be given zero marks.
Instructions:
1. Attempt all the questions.
2. Illustrate your answers with suitable examples and diagrams, wherever necessary.
3. Write relevant question numbers before writing the answer.

Section 1. (Answer the following questions) (5x2=10marks)

Q.1. [CO1] Define what a graph is and explain the difference between directed and undirected graphs.

Q.2. [CO1] Discuss the advantages and disadvantages of using an array-based representation versus a linked list-based
representation for graphs.

Q.3. [CO1] Describe the steps involved in the Insertion Sort algorithm and analyze its time complexity in the best,
average, and worst-case scenarios.
Q.4. [CO1] Compare and contrast linear search and binary search algorithms, discussing their time complexity and when
each would be most appropriate.

Q.5. [CO1] Differentiate Between BFS and DFS

Section 2. (Answer the following questions) (3x7=21 marks)


Q.1. [CO1] Explain Breadth-First Search (BFS) algorithm in detail. Provide a step-by-step walkthrough of BFS on a graph.
Q.2. [CO1] Compare and contrast the performance of Quick Sort and Merge Sort algorithms. Discuss their time
complexity, best-case scenarios, worst-case scenarios, and average-case scenarios. Provide insights into when each
algorithm would be preferable in terms of efficiency also give pseudo codes for both.

Q.3. [CO1 Implement a graph using both array-based and linked list-based representations.
Section 3. (Answer the following questions) (3x11=33 marks)
Q.1. Write a Python class to represent an undirected graph using an adjacency list. Include methods to add vertices and
edges, check if an edge exists between two vertices, and perform Depth-First Search (DFS) traversal. Test your
implementation with a sample graph and demonstrate the results of DFS traversal.

Q.2. [CO1] Implement the Bubble Sort algorithm. Provide a detailed explanation of how the algorithm works and its
time complexity analysis. Test your implementation with various input sizes and analyze its performance. Discuss
any observations or insights gained from your analysis.

Q.3. [CO1] Develop a program that combines searching and sorting algorithms. Implement a function that takes an
unsorted list of integers as input, performs a binary search to find a target value, and then sorts the list using the
Insertion Sort algorithm. Test your program with different input lists and provide a step-by-step explanation of the
search and sort processes.

You might also like