Chúng ta cần viết hàm nhận vào một mảng và một số n (n ≤ độ dài mảng), sau đó đảo ngược n phần tử đầu tiên của mảng.
Ví dụ
Mảng: [3, 5, 5, 2, 23, 4, 7, 8, 8, 9]
Với n = 5, 5 phần tử đầu [3, 5, 5, 2, 23] sẽ bị đảo thành [23, 2, 5, 5, 3].
Giải pháp
Mã triển khai:
const arr = [3, 5, 5, 2, 23, 4, 7, 8, 8, 9];
const partialReverse = (arr = [], num = 0) => {
// Lấy n phần tử đầu
const partialArr = arr.slice(0, num);
// Đảo ngược
partialArr.reverse();
// Thay thế vào mảng gốc
arr.splice(0, num, ...partialArr);
};
partialReverse(arr, 5);
console.log(arr);
Kết quả
Đầu ra trong console:
[23, 2, 5, 5, 3, 4, 7, 8, 8, 9]