JSFiddle - React, Tailwind, and code Playground
by eelyafi
JavaScript
const reorder = (A, O) => {
const ln = O.length;
let i = 0;
while (i < ln) {
if (O[i] === i) {
i = i + 1;
} else {
let newPos = O[i];
let storeElem = A[newPos];
A[newPos] = A[i];
A[i] = storeElem;
let swapPos = O[i];
O[i] = O[newPos];
O[newPos] = swapPos;
}
}
return A;
}
const A = ['E', 'A', 'B', 'D', 'C'];
const O = [4, 0 ,1, 3, 2];
console.log(reorder(A, O));