(a) Merge Sort uses what sort of optimisation: greedy, backtracking or divide and conquer? MergeSort (arr [0, 1, r) If r > 1 1. Find the middle point to divide the array into two halves: middle m = 1+ (r-1)/2 2. Call mergeSort for first half: Call mergeSort(arr, 1, m) 3. Call mergeSort for second half: Call mergeSort(arr, m+1, r) 4. Merge the two halves sorted in step 2 and 3: Call merge (arr, 1, m, r)

Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:James Kurose, Keith Ross
Chapter1: Computer Networks And The Internet
Section: Chapter Questions
Problem R1RQ: What is the difference between a host and an end system? List several different types of end...
icon
Related questions
Question
5.
Consider the following Algorithms and explain
(a) Merge Sort uses what sort of optimisation: greedy, backtracking or divide and conquer?
MergeSort (arr[), 1, r)
If r > 1
1. Find the middle point to divide the array into two halves:
middle m = 1+ (r-1)/2
2. Call mergeSort for first half:
Call mergeSort(arr, 1, m)
3. Call mergeSort for second half:
Call mergeSort(arr, m+1, r)
4. Merge the two halves sorted in step 2 and 3:
Call merge (arr, 1, m, r)
(b) Find Shortest Path to Node
To search for shortest path you can use Breadth First or Depth First Search. What is the optimum
approach?
Traverse the graph breadthwise as follows:
a. First move horizontally and visit all the nodes of the current layer
b. Move to the next layer
Traverse the graph depthwise as follows:
a. Create a recursive function that takes the index of the node and a visited array.
b. Mark the current node as visited and print the node.
c. Traversę all the adjacent and unmarked nodes and call the recursive function with the
index of the adjacent node.
(c) Scheduling of jobs each of one time unit duration, as shown below is using a greedy, backtracking
or divide and conquer optimization strategy?
a. Sort the jobs based on their deadlines.
b. Iterate from the end and calculate the available slots between every two consecutive deadlines. Include the profit,
deadline, and job ID of ith job in the max heap.
c. While the slots are available and there are jobs left in the max heap, include the job ID with maximum profit and deadline
in the result.
d. Sort the result array based on their deadlines.
Transcribed Image Text:5. Consider the following Algorithms and explain (a) Merge Sort uses what sort of optimisation: greedy, backtracking or divide and conquer? MergeSort (arr[), 1, r) If r > 1 1. Find the middle point to divide the array into two halves: middle m = 1+ (r-1)/2 2. Call mergeSort for first half: Call mergeSort(arr, 1, m) 3. Call mergeSort for second half: Call mergeSort(arr, m+1, r) 4. Merge the two halves sorted in step 2 and 3: Call merge (arr, 1, m, r) (b) Find Shortest Path to Node To search for shortest path you can use Breadth First or Depth First Search. What is the optimum approach? Traverse the graph breadthwise as follows: a. First move horizontally and visit all the nodes of the current layer b. Move to the next layer Traverse the graph depthwise as follows: a. Create a recursive function that takes the index of the node and a visited array. b. Mark the current node as visited and print the node. c. Traversę all the adjacent and unmarked nodes and call the recursive function with the index of the adjacent node. (c) Scheduling of jobs each of one time unit duration, as shown below is using a greedy, backtracking or divide and conquer optimization strategy? a. Sort the jobs based on their deadlines. b. Iterate from the end and calculate the available slots between every two consecutive deadlines. Include the profit, deadline, and job ID of ith job in the max heap. c. While the slots are available and there are jobs left in the max heap, include the job ID with maximum profit and deadline in the result. d. Sort the result array based on their deadlines.
Expert Solution
steps

Step by step

Solved in 2 steps

Blurred answer
Recommended textbooks for you
Computer Networking: A Top-Down Approach (7th Edi…
Computer Networking: A Top-Down Approach (7th Edi…
Computer Engineering
ISBN:
9780133594140
Author:
James Kurose, Keith Ross
Publisher:
PEARSON
Computer Organization and Design MIPS Edition, Fi…
Computer Organization and Design MIPS Edition, Fi…
Computer Engineering
ISBN:
9780124077263
Author:
David A. Patterson, John L. Hennessy
Publisher:
Elsevier Science
Network+ Guide to Networks (MindTap Course List)
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:
9781337569330
Author:
Jill West, Tamara Dean, Jean Andrews
Publisher:
Cengage Learning
Concepts of Database Management
Concepts of Database Management
Computer Engineering
ISBN:
9781337093422
Author:
Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:
Cengage Learning
Prelude to Programming
Prelude to Programming
Computer Engineering
ISBN:
9780133750423
Author:
VENIT, Stewart
Publisher:
Pearson Education
Sc Business Data Communications and Networking, T…
Sc Business Data Communications and Networking, T…
Computer Engineering
ISBN:
9781119368830
Author:
FITZGERALD
Publisher:
WILEY