Answer to Assignment 2

Advanced Algorithm Analysis (CP5602)

Due Date: 2nd June 2019 at 11:59pm

Total: 20 marks

Aim: This assignment is designed to evaluate/improve your critical thinking and problem solving skills. It also evaluate/improve your coding skill.

1. For a tree T, let nI denote the number of its internal nodes, and let nE denote the number of its external nodes. Show that if every internal node in T has exactly 3 children, then nE = 2nI + 1.

[2 marks]

2. Insert entries with keys, 2, 7, 3, 12, 5, 20, 14, 6, 11, 8, 15, 17, 1, 19, 23, 14 (in this order), into an empty:

(a) heap. [1 mark]

(b) binary search tree. [1 mark]

(c) AVL tree. [1 mark]

(d) (2, 4) tree. [1 mark]

[4 marks] 3. Although merge sort runs in ????(n lg n) worst-case time and insertion sort runs in ????(n2) worst case time, the constant factors in insertion sort make it faster for small n. Thus, it makes sense to use insertion sort within merge sort when sub problems become sufficiently small. Consider a modification to merge sort in which n/k sub lists of length k are sorted using insertion sort and then merged using the standard merging mechanism, where k is a value to be determined.

i) Show that the n/k sub lists, each of length k, can be sorted by insertion sort in ????(nk) worst-case time. [1 mark]

ii) Show that the sub lists can be merged in ????(n lg(n/k)) worst-case time. [2 marks] iii) Given that the modified algorithm runs in ????(nk + n lg(n/k)) worst-case time, what is the largest asymptotic (????-notation) value of k as a function of n for which the modified algorithm has the same asymptotic running time as standard merge sort. [2 marks] [5 marks]

4. Consider the recurrence T(n) = 3T(?n/2?) + n.

i) Use the master method to give tight asymptotic bound for this recurrence (if the master method cannot be used, explain why). [1 mark]

ii) Use a recursion tree to determine a good asymptotic upper bound on this recurrence.

[2 marks] iii) Use the substitution method to verify your answer. [1 mark]

[4 marks]

5. Show all the steps for performing any of the following algorithms for matching the pattern ‘rithm’ in the text ‘advancedalgorithmanalysis’.

(a) brute-force [1 mark]

(b) Boyer-Moore [2 mark]

(c) Knuth-Morris-Pratt [2 mark]

[5 marks]

Advanced Algorithm Analysis (CP5602)

Due Date: 2nd June 2019 at 11:59pm

Total: 20 marks

Aim: This assignment is designed to evaluate/improve your critical thinking and problem solving skills. It also evaluate/improve your coding skill.

1. For a tree T, let nI denote the number of its internal nodes, and let nE denote the number of its external nodes. Show that if every internal node in T has exactly 3 children, then nE = 2nI + 1.

[2 marks]

2. Insert entries with keys, 2, 7, 3, 12, 5, 20, 14, 6, 11, 8, 15, 17, 1, 19, 23, 14 (in this order), into an empty:

(a) heap. [1 mark]

(b) binary search tree. [1 mark]

(c) AVL tree. [1 mark]

(d) (2, 4) tree. [1 mark]

[4 marks] 3. Although merge sort runs in ????(n lg n) worst-case time and insertion sort runs in ????(n2) worst case time, the constant factors in insertion sort make it faster for small n. Thus, it makes sense to use insertion sort within merge sort when sub problems become sufficiently small. Consider a modification to merge sort in which n/k sub lists of length k are sorted using insertion sort and then merged using the standard merging mechanism, where k is a value to be determined.

i) Show that the n/k sub lists, each of length k, can be sorted by insertion sort in ????(nk) worst-case time. [1 mark]

ii) Show that the sub lists can be merged in ????(n lg(n/k)) worst-case time. [2 marks] iii) Given that the modified algorithm runs in ????(nk + n lg(n/k)) worst-case time, what is the largest asymptotic (????-notation) value of k as a function of n for which the modified algorithm has the same asymptotic running time as standard merge sort. [2 marks] [5 marks]

4. Consider the recurrence T(n) = 3T(?n/2?) + n.

i) Use the master method to give tight asymptotic bound for this recurrence (if the master method cannot be used, explain why). [1 mark]

ii) Use a recursion tree to determine a good asymptotic upper bound on this recurrence.

[2 marks] iii) Use the substitution method to verify your answer. [1 mark]

[4 marks]

5. Show all the steps for performing any of the following algorithms for matching the pattern ‘rithm’ in the text ‘advancedalgorithmanalysis’.

(a) brute-force [1 mark]

(b) Boyer-Moore [2 mark]

(c) Knuth-Morris-Pratt [2 mark]

[5 marks]

ASSESSMENT BRIEFSubject Code and Name LAW6000 Business and Corporate LawAssessment Assessment 2 Case study analysisIndividual/Group IndividualLength 1500 wordsLearning OutcomesThis assessment addresses...ASSESSMENT BRIEFSubject Code and Title LAW 2002 Introduction to income tax lawAssessment Assessment 4: Case StudyIndividual/Group IndividualLength 1500 wordsLearning Outcomes This case study must be presented...HI5013 – MANAGING ACROSS BORDERSASSESSMENT 1 – INDIVIDUAL ASSIGNMENTWeighting: 20% of total marksDue date: 5pm Friday, week 5Length: Maximum 1,200 wordsPlease choose one of the following topics to discuss:1....HOLMES INSTITUTEFACULTY OFHIGHER EDUCATIONAssessment Details and Submission GuidelinesTrimester T2 2019Unit Code HI6006Unit Title Competitive StrategyAssessment Type Individual AssignmentAssessment Title...ASSIGNMENT 1: Reflective Essay This is an individual assessment. Students must not collude with each other. TOPIC 1: Reflect on and briefly explain the scope of employee diversity in a healthcare organisation...INF80042 TECHNOLOGY ESSENTIALS FOR MANAGERS Assignment 1: Managing Technology Assessment Structure: Annotated Bibliography Individual or Group: Individual Learning outcomes assessed: This assessment task...Written AssignmentBusiness Management Skills(DIPMB3_AS_v2)Student identification (student to complete)Please complete the fields shaded grey.Student numberWritten Assignment result (assessor to complete)Result...**Show All Questions**