Progressive Array คืออาร์เรย์สตริงที่เรียงตามความยาวเพิ่มขึ้น และแต่ละคำถัดไปเกิดจากคำก่อนหน้าโดยเพิ่มตัวอักษร 1 ตัวที่หน้าหรือหลัง
ตัวอย่าง
['c', 'ca', 'can', 'acan', 'acane', 'dacane'] → true c → ca (+a ท้าย) → can (+n ท้าย) → acan (+a หน้า) → acane (+e ท้าย) → dacane (+d หน้า)
ตัวอย่างโค้ด
const arr = ["c", "ca", "can", "acan", "acane", "dacane"];
const isProgressive = arr => {
for (let i = 0; i < arr.length - 1; i++) {
const nextLength = arr[i + 1].length;
// ตรวจสอบว่าคำถัดไป = คำปัจจุบัน + ตัวอักษรหน้าหรือท้าย
if (arr[i + 1] === arr[i + 1][0] + arr[i] ||
arr[i + 1] === arr[i] + arr[i + 1][nextLength - 1]) {
continue;
}
return false;
}
return true;
};
console.log(isProgressive(arr));
ผลลัพธ์
true
ประยุกต์ใช้: การตรวจสอบลำดับคำ การสร้างพจนานุกรมการต่อคำ