使用递归在 JavaScript 数组中移除连续的重复项
我们应该写一个接受数字/字符串文字数组的函数。该函数应该在不使用额外存储空间的情况下移除数组中所有多余的连续元素。
例如,如果输入数组是 -
const arr = [17, 17, 17, 12, 12, 354, 354, 1, 1, 1];
则输出应该是 -
const output = [17, 12, 354, 1];
因此,让我们写出此函数的代码 -
示例
代码为 -
const arr = [17, 17, 17, 12, 12, 354, 354, 1, 1, 1];
const comp = (arr, len = 0, deletable = false) => {
if(len < arr.length){
if(deletable){
arr.splice(len, 1);
len--;
}
return comp(arr, len+1, arr[len] === arr[len+1])
};
return;
};
comp(arr);
console.log(arr);输出
控制台中的输出是 -
[ 17, 12, 354, 1 ]
广告
数据结构
计算机网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP