美文网首页
原生javascript面试题:给定一个有序数组,如果数组内容是

原生javascript面试题:给定一个有序数组,如果数组内容是

作者: 潜水的旱鸭子 | 来源:发表于2020-11-24 15:22 被阅读0次

如题:给定一个有序数组,如果数组内容是连续的,使用->符号,连接连续数字的第一个和最后一个。
原数组:[1, 2, 3, 4, 5, 7, 8, 9, 12, 14, 15, 16]
返回新数组:["1->5", "7->9", 12, "14->16"]

    let input = [1, 2, 3, 4, 5, 7, 8, 9, 12, 14, 15, 16];
    let output = [];

    let len = input.length;
    let i;
    for (i=0; i<len; i++) {
        let start = input[i];
        let j;
        for (j=i; j<len; j++) {
            if (input[j] + 1 !== input[j + 1]) {
                break;
            }
        }
        i = j;
        if (start == input[j]) {
            output.push(start);
        } else {
            output.push(start + "->" + input[j]);
        }
    }
    console.log(input);     // [1, 2, 3, 4, 5, 7, 8, 9, 12, 14, 15, 16]
    console.log(output);    // ["1->5", "7->9", 12, "14->16"]

相关文章

  • 原生javascript面试题:给定一个有序数组,如果数组内容是

    如题:给定一个有序数组,如果数组内容是连续的,使用->符号,连接连续数字的第一个和最后一个。原数组:[1, 2, ...

  • 查找

    查找 折半查找: 面试题: 给定一个有序的数组,如果往该数组中存储一个数,并保证这个数组还是有序的,那么这个元素的...

  • 递归方法判断数组中的元素是不是有序

    问题:给定一个数组,请用递归方法判定数组中的元素是不是有序。分析:如果数组中只有一个元素,直接返回1表示有序

  • LeetCode4.寻找两个有序数组的中位数 JavaScrip

    LeetCode4.寻找两个有序数组的中位数 JavaScript 给定两个大小为m和n的有序数组nums1和nu...

  • BOM和DOM

    数组定义 数组是值的有序集合 javascript数组是无类型的;数组元素可以是任意类型,并且同一个数组的不同元素...

  • javascript

    数组定义 数组是值的有序集合 javascript数组是无类型的;数组元素可以是任意类型,并且同一个数组的不同元素...

  • javascript

    数组定义 数组是值的有序集合 javascript数组是无类型的;数组元素可以是任意类型,并且同一个数组的不同元素...

  • JavaScript数组的方法

    数组定义 数组是值的有序集合 javascript数组是无类型的;数组元素可以是任意类型,并且同一个数组的不同元素...

  • js数组基础理解

    1.数组 概念 数组是一组数据有序排列的集合,并且给定一个名字。 数组是一种引用数据类型。 理解 如果给变量赋值为...

  • per-course数组

    数组是数据的有序列表。JavaScript中,数组中的每一项可以保存任何类型的数据JavaScript中,数组的长...

网友评论

      本文标题:原生javascript面试题:给定一个有序数组,如果数组内容是

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