Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Kiểm tra mảng có thể sắp xếp thành dãy số liên tiếp trong JavaScript

Kiểm tra mảng có thể sắp xếp thành dãy số liên tiếp trong JavaScript

Chúng ta cần viết một hàm JavaScript nhận vào một mảng số và kiểm tra xem các phần tử của mảng có thể sắp xếp lại để tạo thành một dãy số liên tiếp hay không.

Ví dụ: Nếu mảng là:

const arr = [3, 1, 4, 2, 5];

Thì kết quả đầu ra nên là true.

Do đó, hãy viết mã cho hàm này:

Ví dụ

Mã thực hiện như sau:

const arr = [3, 1, 4, 2, 5];
const canBeConsecutive = (arr = []) => {
  if(!arr.length){
    return false;
  };
  const copy = arr.slice();
  copy.sort((a, b) => a - b);
  for(let i = copy[0], j = 0; j < copy.length; i++, j++){
    if(copy[j] === i){
      continue;
    };
    return false;
  };
  return true;
};
console.log(canBeConsecutive(arr));

Đầu ra

Kết quả trong console sẽ là:

true