เราได้รับ str1 และ str2 สองสตริง เราจำเป็นต้องเขียนฟังก์ชันที่ตรวจสอบว่า str1 เป็นผลสืบเนื่องของ str2 หรือไม่
ลำดับที่ตามมาของสตริงคือสตริงใหม่ที่สร้างขึ้นจากสตริงเดิมโดยการลบอักขระบางตัว (ไม่สามารถไม่มีได้) โดยไม่รบกวนตำแหน่งสัมพัทธ์ของอักขระที่เหลือ
ตัวอย่างเช่น "เอซ" เป็นผลสืบเนื่องของ "abcde" ในขณะที่ "aec" ไม่ใช่
ตัวอย่าง
const str1 = 'ace'; const str2 = 'abcde'; const isSubsequence = (str1, str2) => { let i=0; let j=0; while(i<str1.length){ if(j===str2.length){ return false; } if(str1[i]===str2[j]){ i++; } j++; }; return true; }; console.log(isSubsequence(str1, str2));
ผลลัพธ์
และผลลัพธ์ในคอนโซลจะเป็น −
true