Assignment:Asymptotic Notations and Correctness of Algorithms
Resources: If want help with plotting your data on excel you can use this YouTube link.
1. Identify asymptomatic notation of a function: Use the definitions of O, Ω and Θ to identify if
the following statements are true or false. Prove your assertion by solving for the values of c
and no. Draw a rough graph representing the c and no values if the statement is True.
a. n(n+1)/2 ∈ O(n3)
b. n(n+1)/2 ∈ Θ(n2)
c. n(n+1)/2 ∈ Θ(n3)
d. n(n+1)/2 ∈ Ω (n)
2. Compare order of growth: For each of the following, indicate whether f = O(g), f = Ω (g) or f
= Θ (g).
a. f(n) = 10n-6, g(n) = 12345678n + 2020
b. f(n) = n!, g(n) = 0.00001n
c. f(n) = n1.34, g(n) = log n
d. f(n) = n + n4, g(n) = n3 + log n
3. Identify asymptomatic notation of an operation:
If you want to search for a value ‘x’ in the following data structures and return True if the
value is present otherwise return False. What would be the time complexity for this
operation? Assume that the values are sorted. (Use an appropriate notation among O, Ω and
Θ to mention the time complexity). Provide an explanation for your answer.
a. Array
b. Linked List
4. Read and Analyse Pseudocode: Consider the following algorithm
Classified(A…n-1):
minval = A[0]
maxval = A[0]
for i = 1 to n-1:
if A[i] < minval:
minval = A[i]
if A[i] > maxval
maxval = A[i]
return maxval – minval
a. What does this algorithm compute?
b. What is its basic operation (i.e. the line of code or operation that is executed
maximum number of times)?
c. How many times is the basic operation executed?
d. What is the time complexity of this algorithm?
5. Using mathematical induction prove below non-recursive algorithm:
Any number greater than 8 can written in terms of three or five.
a. Write a pseudocode of algorithm that that takes a number greater than 8 and
returns a tuple (x,y); where x represents number of threes and y represent number
of fives make that number
If number = 8 your pseudocode should return (1,1)
b. Prove correctness of your pseudocode using induction
c. What is the time complexity of your pseudocode?
d. Code your pseudocode into python and name your file ThreeAndFive.py
6. Visualizing time complexity for best case, worst case and average case:
a. Implement insertion sort to sort an array of numbers in descending order. Name
your function insertionsort and your file EvaluateInsertionSort.py.
b. Modify your code to add another function timeSortingRandomNumbers() that
creates arrays of different sizes ranging from 0 to 10,000 with random unsorted
numbers and collects the time that insertionsort function takes to sort the arrays.
Collect at least 10 running times.
c. Modify your code to add another function timeSortingAscendingNumbers() that
creates arrays of different sizes ranging from 0 to 10,000 with numbers sorted in
ascending order and collects the time that insertionsort function takes to sort the
arrays. Collect at least 10 running times.
d. Modify your code to add another function timeSortingDescendingNumbers() that
creates arrays of different sizes ranging from 0 to 10,000 with numbers sorted in
descending order and collects the time that insertionsort function takes to sort the
arrays. Collect at least 10 running times.
e. Plot the running time obtained 6.b, 6.c, 6.d using excel. On y axis: running time and
on X axis: array sizes
f. What is your observation about the insertion sort algorithm on random array, array
with numbers in ascending order and array with numbers in descending order?
Debriefing (required!): ————————–
Report:
1. Approximately how many hours did you spend on this assignment?
2. Would you rate it as easy, moderate, or difficult?
3. How deeply do you feel you understand the material it covers (0%–100%)?
4. Any other comments?
We provide professional writing services to help you score straight A’s by submitting custom written assignments that mirror your guidelines.
Get result-oriented writing and never worry about grades anymore. We follow the highest quality standards to make sure that you get perfect assignments.
Our writers have experience in dealing with papers of every educational level. You can surely rely on the expertise of our qualified professionals.
Your deadline is our threshold for success and we take it very seriously. We make sure you receive your papers before your predefined time.
Someone from our customer support team is always here to respond to your questions. So, hit us up if you have got any ambiguity or concern.
Sit back and relax while we help you out with writing your papers. We have an ultimate policy for keeping your personal and order-related details a secret.
We assure you that your document will be thoroughly checked for plagiarism and grammatical errors as we use highly authentic and licit sources.
Still reluctant about placing an order? Our 100% Moneyback Guarantee backs you up on rare occasions where you aren’t satisfied with the writing.
You don’t have to wait for an update for hours; you can track the progress of your order any time you want. We share the status after each step.
Although you can leverage our expertise for any writing task, we have a knack for creating flawless papers for the following document types.
Although you can leverage our expertise for any writing task, we have a knack for creating flawless papers for the following document types.
From brainstorming your paper's outline to perfecting its grammar, we perform every step carefully to make your paper worthy of A grade.
Hire your preferred writer anytime. Simply specify if you want your preferred expert to write your paper and we’ll make that happen.
Get an elaborate and authentic grammar check report with your work to have the grammar goodness sealed in your document.
You can purchase this feature if you want our writers to sum up your paper in the form of a concise and well-articulated summary.
You don’t have to worry about plagiarism anymore. Get a plagiarism report to certify the uniqueness of your work.
Join us for the best experience while seeking writing assistance in your college life. A good grade is all you need to boost up your academic excellence and we are all about it.
We create perfect papers according to the guidelines.
We seamlessly edit out errors from your papers.
We thoroughly read your final draft to identify errors.
Work with ultimate peace of mind because we ensure that your academic work is our responsibility and your grades are a top concern for us!
Dedication. Quality. Commitment. Punctuality
Here is what we have achieved so far. These numbers are evidence that we go the extra mile to make your college journey successful.
We have the most intuitive and minimalistic process so that you can easily place an order. Just follow a few steps to unlock success.
We understand your guidelines first before delivering any writing service. You can discuss your writing needs and we will have them evaluated by our dedicated team.
We write your papers in a standardized way. We complete your work in such a way that it turns out to be a perfect description of your guidelines.
We promise you excellent grades and academic excellence that you always longed for. Our writers stay in touch with you via email.