用 JavaScript 从字符串中移除相邻重复项


问题

JavaScript 函数以字符串 str 作为第一个且唯一的参数。

重复项消除包括选择相邻且相同的两个字母,并将其移除。

我们针对字符串 str 重复执行重复项消除操作,直到无法再进行为止。

最后,我们的函数应在执行所有此类重复项消除操作后返回最终字符串。

例如,如果函数的输入为 −

const str = 'kllkmk';

则输出应为 −

const output = 'mk';

输出说明

首先,我们将从字符串中移除“ll”以生成“kkmk”,然后在移除“kk”后,我们将返回新字符串。

示例

用于此操作的代码为 −

 实际示例

const str = 'kllkmk';
const removeDuplicates = (str = '') => {
   const arr = [];
   for(const char of str){
      if(char === arr[arr.length - 1]){
         while(arr[arr.length - 1] === char){
            arr.pop();
         };
      } else {
         arr.push(char);
      };
   };
   return arr.join('');  
};
console.log(removeDuplicates(str));

输出

控制台中的输出将为 −

mk

更新日期: 2021 年 4 月 7 日

2K+ 浏览量

启动您的 职业

通过完成这门课程获得认证

开始
广告
© . All rights reserved.