美文网首页
Javascript算法:合并数组中相邻且重复的元素

Javascript算法:合并数组中相邻且重复的元素

作者: 尤小小 | 来源:发表于2019-03-29 10:11 被阅读0次

技术群里有人扔出来一道算法题。练手玩玩。

说明:请实现一个函数 merge,传入一个数组,合并数组中【相邻且重复】的元素。

示例:

merge([3,2,2,4,5,5,6,2,1]); // 输出[3,2,4,5,6,2,1]

merge([3,2,3]); // 输出[3,2,3]

merge([2,2,3]); // 输出[2,3]

实现思路,循环遍历数组,当前元素如果跟上个元素不相等,就将当前元素插入到新数组,然后返回新数组,就是可以实现合并数组中【相邻且重复】的元素了。具体实现如下:

function merge(arr) {
    let newArr = []
    arr.forEach((item, index) => {
        if(item != arr[index-1]) {
            newArr.push(item)
        }
    });

    return newArr
}
console.log(merge([2,2,3])); // 输出[2,3]
console.log(merge([3,2,3])); // 输出[2,3]
console.log(merge([3,2,2,4,5,5,6,2,1])); // 输出[2,3]

相关文章

  • Javascript算法:合并数组中相邻且重复的元素

    技术群里有人扔出来一道算法题。练手玩玩。 说明:请实现一个函数 merge,传入一个数组,合并数组中【相邻且重复】...

  • 数组中重复元素的处理

    1、取出数组中重复的元素(不重复的不提取,合并重复的元素) 2、合并重复的元素 (不重复的也提取) 3、剔除数组中...

  • Objective-C实现冒泡算法

    一,冒泡算法简介 冒泡算法是一种基础的排序算法,这种算法会重复的比较数组中相邻的两个元素。如果一个元素比另一个元素...

  • iOS 常用算法

    1.冒泡排序 冒泡算法是一种基础的排序算法,这种算法会重复的比较数组中相邻的两个元素,如果一个元素比另一个元素大/...

  • iOS 开发中常用的排序(冒泡、选择、快速、插入、希尔、归并、基

    1、冒泡排序:冒泡算法是一种基础的排序算法,这种算法会重复的比较数组中相邻的两个元素。如果一个元素比另一个元素大(...

  • 八大排序算法

    八大排序算法 1.冒泡排序 冒泡算法是一种基础的排序算法,这种算法会重复的比较数组中相邻的两个元素。如果一个元素比...

  • 排序

    1.冒泡排序冒泡算法是一种基础的排序算法,这种算法会重复的比较数组中相邻的两个元素。如果一个元素比另一个元素大(小...

  • 26. Remove Duplicates from Sorte

    从数组中删除重复元素,返回无重复长度的数组,要使用in place算法,把返回的元素填入重复的位置即可

  • 数据结构和算法面试题整理

    #数组 - [查找数组中第二小的元素] - [查找第一个没有重复的数组元素] - [合并 2 个排序好的数组] -...

  • js手写数组去重

    javascript数组中若存在重复元素,此时我们需要将重复的元素去除,下面我讲介绍一下几种方法进行数组元素去重 ...

网友评论

      本文标题:Javascript算法:合并数组中相邻且重复的元素

      本文链接:https://www.haomeiwen.com/subject/hqikbqtx.html