How to reorder an array according to given indexes in JavaScript

1 Answer

0 votes
class CArray
{
	printArray(arr) {
		let size = arr.length;
		
        let s = "";
		for (let i = 0; i < size; ++i) {
			s += arr[i] + " ";
		}
		console.log(s);
	}
	reorder(arr, indexes, i) {
	    let size = arr.length;
		
		if (i < size) {
			let data = arr[i];
			this.reorder(arr, indexes, i + 1);
			arr[indexes[i]] = data;
		}
	}
}

const obj = new CArray();
	
const arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
const indexes = [1, 0, 4, 3, 2, 5, 9, 7, 8, 6];
	
obj.printArray(arr);
obj.printArray(indexes);

obj.reorder(arr, indexes, 0);
obj.printArray(arr);




/*
run:

"1 2 3 4 5 6 7 8 9 10 "
"1 0 4 3 2 5 9 7 8 6 "
"2 1 5 4 3 6 10 8 9 7 "

*/

 



answered Nov 28, 2021 by avibootz

Related questions

1 answer 271 views
1 answer 208 views
1 answer 213 views
1 answer 256 views
1 answer 208 views
1 answer 266 views
1 answer 206 views
...