Sorting and Rearranging
In this approach, sort an array and then rearranges it in an alternating high-low order in JavaScript. It first sorts the array in ascending order, then uses a while loop to alternately push the largest remaining element and the smallest remaining element to a new array. The final array is returned and logged.
Example: The example below shows Alternative sorting of an array using Sorting and Rearranging.
function alternativeSort(arr) {
arr.sort((a, b) => a - b);
let answer = [];
let start = 0, end = arr.length - 1;
while (start <= end) {
answer.push(arr[end--]);
if (start <= end) {
answer.push(arr[start++]);
}
}
return answer;
}
const arr1 = [5, 6, 2, 4, 3, 1];
console.log("Sorted Array with Alternative Sorting:",
alternativeSort(arr1));
Output
Sorted Array with Alternative Sorting: [ 6, 1, 5, 2, 4, 3 ]
Time complexity: O(n log n)
Space complexity: O(n)
Alternative Sorting of an Array using JavaScript
Alternative sorting means we have to arrange the elements of an array in such a way that the first element is the first maximum and the second element is the first minimum, the third element is the second maximum, the fourth element is the second minimum, and so on.
Example:
Input: array = [5, 6, 2, 4, 3, 1]
Output: array = [6, 1, 5, 2, 4, 3]
Explanation:
Sorting the array: [1, 2, 3, 4, 5, 6]
First element (1) from the sorted array.
Last element (6) from the sorted array.
Second element (2) from the sorted array.
Second-to-last element (5) from the sorted array.
Third element (3) from the sorted array.
Third-to-last element (4) from the sorted array
Now reordered the array: [6, 1, 5, 2, 4, 3]
Below are the approaches for Alternative sorting of an array using JavaScript:
Table of Content
- Sorting and Rearranging
- Using Two Arrays
Contact Us