Medium Accuracy: 50.0% Submissions: 29067 Points: 4
Given an array of integers. Find the minimum number of swaps required to sort the array in non-decreasing order.
The first line of input contains an integer T denoting the no of test cases. Then T test cases follow. Each test case contains an integer N denoting the no of element of the array A[ ]. In the next line are N space separated values of the array A[ ] .
For each test case in a new line output will be an integer denoting minimum umber of swaps that are required to sort the array.
1 <= T <= 100
1 <= N <= 105 1 <= A <= 106
You don't need to read input or print anything. Your task is to complete the functionminSwaps() which takes the array arr and its size N as inputs and returns an integer denoting the minimum number of swaps required to sort the array. If the array is already sorted, return 0.
Expected Time Complexity: O(NlogN). Expected Auxiliary Space: O(N).
Example(To be used only for expected output):
1 5 4 3 2
8 9 16 15
Explanation: Test Case 1: We need two swaps, swap 2 with 5 and 3 with 4 to make it sorted.