0% found this document useful (0 votes)
47 views3 pages

DAA-Assignment - 1

The document provides instructions for the Design and Analysis of Algorithms assignment. Students must answer 3 questions from each of 2 units and submit their responses by April 1, 2024. Late submissions will not be awarded marks. Rubrics are provided to evaluate programming questions based on functionality, code quality, documentation, and testing. Non-programming questions are evaluated on understanding, depth of content, originality, and clarity of writing. 10 problems are listed for each unit, involving implementing algorithms and analyzing time complexity.

Uploaded by

Hanith Cg
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
47 views3 pages

DAA-Assignment - 1

The document provides instructions for the Design and Analysis of Algorithms assignment. Students must answer 3 questions from each of 2 units and submit their responses by April 1, 2024. Late submissions will not be awarded marks. Rubrics are provided to evaluate programming questions based on functionality, code quality, documentation, and testing. Non-programming questions are evaluated on understanding, depth of content, originality, and clarity of writing. 10 problems are listed for each unit, involving implementing algorithms and analyzing time complexity.

Uploaded by

Hanith Cg
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

SCHOOL OF COMPUTER SCIENCE AND ENGINEERING

Course: Design and Analysis of Algorithms – Assignment 1


Course Code: B22EF0401

A) Instructions:
1. Answer any THREE questions from each unit.
2. Each question carries 5 marks.
3. The due date for submission on or before: 1/4/2024
4. The late submission, no marks will be awarded.
5. Write assignment in blue books only.
6. Paste the screen shots of minimum 2 different and unique inputs and
outputs
B) Rubrics for Programming Questions: - Max – 20 Marks per question which
will be reduced as per requirement.
Needs
Criteria Excellent (5) Good (4) Fair (3) Improvement Inadequate (1)
(2)
Program fully Program meets Program Program meets Program does
meets all most partially meets few requirements not meet
Functionality
requirements and requirements requirements and/or doesn't requirements or
works and works and works work work
Code is Code is
Code is well- Code is mostly Code is difficult
somewhat unreadable or
Code Quality structured, clear, well-structured to follow or
difficult to excessively
and easy to read and readable messy
follow messy
Sufficient
Comprehensive Comments are Lack of No comments or
comments
Documentation comments sparse or comments or documentation
explaining
throughout code unclear documentation provided
major parts
Extensive testing Inadequate
Testing covers Limited testing No testing
Testing covering various testing or no
most cases coverage provided
cases testing provided

C) Example of evaluation: -
Criteria Excellent (5) Good (4) Fair (3) Needs Improvement (2) Inadequate (1)
Functionality 2
Code Quality 3
Documentation 1
Testing 3

Total = 2+3+1+3 = 9 out of 20


Reduced to 5 marks = 9/20 * 5 = 2.25 rounded = 2

D) Rubrics for Non – programming Questions: - Max – 20 Marks per question


which will be reduced as per requirement.
Criteria Excellent (5) Good (4) Fair (3) Poor (2) Inadequate (1)
Demonstrates a Shows a solid Demonstrates Fails to
Shows some
thorough understanding limited demonstrate
Understanding understanding
understanding of most understanding understanding of
but lacks depth.
of the concepts. concepts. of the concepts. the concepts.
Provides in- Covers most Covers some Superficial
Fails to cover
Depth of depth coverage required required coverage of
required aspects
Content of all required aspects with aspects but required
adequately.
aspects. adequate depth. lacks depth. aspects.
Lacks
Shows Demonstrates Ideas are
originality;
originality in some mostly derived Fails to present any
Originality mostly
ideas and originality in from existing original ideas.
reiterates
approaches. ideas. sources.
existing ideas.
Writing is Writing is
Writing is Writing is Writing is
somewhat unclear and
Clarity of clear, concise, mostly clear incomprehensible
unclear with contains
Writing and free of with minor with numerous
noticeable numerous
errors. errors. errors.
errors. errors.

E) Assignment Problems: -

UNIT - 1

1. Implement an algorithm to check if a given string is a palindrome and obtain


its worst-case time complexity.
2. Implement at least 3 sorting algorithms Merger sort, Quick sort, and and
analyze their execution time plot a graph for all the 3.
3. Implement and Analyze the time complexity of Strassen’s Matrix Multiplication
and express it using Big-O notation.
4. Implement the factorial calculation using an iterative approach and analyze its
time complexity.
5. Implement and compare the time complexity of linear and binary search
algorithms for a sorted array.
6. Write a recursive algorithm for calculating the nth Fibonacci number and
analyze its time complexity.
7. Discuss the efficiency class of a recursive algorithm to compute the power of a
number.
8. Solve the Tower of Hanoi problem using a non-recursive algorithm and write
the time complexity in terms of Big O
9. Implement an iterative algorithm and Recursive algorithm to calculate the
GCD (Greatest Common Divisor) of two numbers and analyze the time
complexity.
10. Compare the execution times of counting sort and selection sort algorithms.

UNIT - 2
1. Implement a sequential search algorithm to find the position of a target
element in an array for large inputs, plot the execution time against input size.
2. Write a function to check if all elements in an array are unique and discuss the
efficiency of your uniqueness checking algorithm for large datasets.
3. Implement an exhaustive search algorithm to solve the Travelling Salesman
Problem for a given set of cities and distances and discuss the time complexity
and limitations of the exhaustive search approach for large city datasets.
4. Solve the Knapsack Problem using an exhaustive search approach and analyze
the efficiency of your solution for different sizes of the knapsack and item sets.
5. Implement a brute-force string matching algorithm to find the occurrences of
a pattern in a given text and compare the time complexity of the brute-force
approach with more advanced string matching algorithms.
6. Explain the characteristics that make hash functions suitable for various
applications. Discuss how properties like determinism, efficiency, and collision
resistance contribute to their effectiveness in data processing.
7. Compare and contrast the division method and the multiplication method of
designing hash functions. Highlight the advantages and disadvantages of each
approach, considering factors such as simplicity, uniformity of distribution,
and computational efficiency.
8. Investigate the division method used in hash functions. Discuss the key steps
involved and potential challenges or limitations. Additionally, provide
examples to illustrate situations where the division method might be more or
less effective in achieving a uniform distribution of hash values.
9. Explore the multiplication method employed in hash functions. Explain the
rationale behind this technique and analyze how it addresses specific issues in
hash function design. Include practical examples to demonstrate the
application and potential pitfalls of the multiplication method.
10. Hash collisions can be a significant concern in hash functions. Present a
scenario where collision resolution becomes challenging, and discuss potential
strategies for mitigating collisions. Elaborate on the trade-offs associated with
these strategies and how they impact the overall performance and reliability
of hash functions.

You might also like