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

Kiểm tra mảng tiến triển (progressive) - JavaScript

Mảng chuỗi được sắp xếp theo độ dài tăng dần. Mảng là progressive nếu mỗi chuỗi sau được tạo bằng cách thêm 1 ký tự vào đầu HOẶC cuối chuỗi trước.

Ví dụ

Mảng: ["c", "ca", "can", "acan", "acane", "dacane"]

c → ca (thêm 'a' cuối) → can (thêm 'n' cuối) → acan (thêm 'a' đầu) → acane (thêm 'e' cuối) → dacane (thêm 'd' đầu) → true

Giải pháp

Mã triển khai:

const arr = ["c", "ca", "can", "acan", "acane", "dacane"];

const isProgressive = arr => {
  for (let i = 0; i < arr.length - 1; i++) {
    const next = arr[i+1];
    const prev = arr[i];
    const len = next.length;
    // Kiểm tra next = prev + ký tự cuối HOẶC ký tự đầu + prev
    if (next === prev + next[len-1] || next === next[0] + prev) continue;
    return false;
  }
  return true;
};

console.log(isProgressive(arr));

Kết quả

Đầu ra trong console:

true