动态编程:是第一个JavaScript的第二个字符串子序列

我们给了两个字符串str1和str2,我们需要编写一个函数来检查str1是否是str2的子序列。

字符串的子序列是一个新字符串,它是通过删除某些字符(可以是无字符)而不会干扰其余字符的相对位置而从原始字符串形成的。

例如,“ ace”是“ 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