Swapping Elements in Place
Swapping elements in place means exchanging the positions of two elements within an array without creating a new array. here we will swap elements within the original array, following the specified indexes.
Syntax:
[a[m], a[n]] = [a[n], a[m]]
// Where m and n are the index numbers to swap
Example: In this example, the reorderArrayByIndexes function reorders originalArray using indexesArray, swapping elements to their respective positions.
function reorderArrayByIndexes(originalArray, indexesArray) {
for (let i = 0; i < indexesArray.length; i++) {
while (indexesArray[i] !== i) {
const currentIndex = indexesArray[i];
[originalArray[i], originalArray[currentIndex]] =
[originalArray[currentIndex], originalArray[i]];
[indexesArray[i], indexesArray[currentIndex]] =
[indexesArray[currentIndex], indexesArray[i]];
}
}
return originalArray;
}
const originalArray =
['HTML', 'CSS', 'JavaScript', 'Bootstrap'];
const indexesArray = [3, 1, 2, 0];
const reorderedArray =
reorderArrayByIndexes(originalArray, indexesArray);
console.log(reorderedArray);
Output
[ 'Bootstrap', 'CSS', 'JavaScript', 'HTML' ]
JavaScript Program to Reorder an Array According to Given Indexes
Reordering an array according to given indexes means rearranging the elements of an array based on a separate array that specifies the desired order. Each element in the given index array corresponds to the index of the element in the original array at which it should be placed in the reordered array. This operation is useful when you need to sort or arrange elements in a specific custom order, different from the natural order of the elements.
There are several methods that can be used to Reorder an array according to given indexes in JavaScript, which are listed below:
Table of Content
- Using the map method
- Creating a Custom Sorting Function
- Swapping Elements in Place
We will explore all the above methods along with their basic implementation with the help of examples.