Question: (30 points) Let A[1...n] be an array of n distinct numbers (i.e., no two numbers are equal). If i A[j], then the pair (A[i], A[j])
![(30 points) Let A[1...n] be an array of n distinct numbers](https://dsd5zvtm8ll6.cloudfront.net/si.experts.images/questions/2024/09/66fa6bcada58c_62666fa6bca79f7a.jpg)
![(i.e., no two numbers are equal). If i A[j], then the pair](https://dsd5zvtm8ll6.cloudfront.net/si.experts.images/questions/2024/09/66fa6bcb7b498_62766fa6bcb16a98.jpg)
(30 points) Let A[1...n] be an array of n distinct numbers (i.e., no two numbers are equal). If i A[j], then the pair (A[i], A[j]) is called an inversion of A. (a) List all inversions of the array {4, 2,9,1, 7}. (5 points) (b) What array with elements from the set {1, 2, ...,n} has the most inversions? How many inversions does it have? (5 points) (c) Give a divide-and-conquer algorithm that computes the number of inversions in array A in O(n log n) time. (Hint: Modify merge sort.) (20 points)
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
