3条回答 默认 最新
- 阿狸梦之堡风之寄语,愿您千帆历尽心依旧 2020-07-09 17:51关注
那就需要遍历数组,查找连续的序列,用一个标识初始为第一个元素,参考代码:
function conseq(){ var array = [1,2,3,6,7,8,10]; const last = []; // 存储最终结果的数组 let cur=array[0]; // 查找最长连续序列的初始值 for(let i=1;i<array.length;i++) { if(array[i]==cur+i) { // 当前元素是连续的,则继续 continue; } // 不连续,则向目标数组存储一个 1-cur的 字符串 if(cur != array[i-1]) { last.push(cur+'-'+array[i-1]); } else { //只有一个数 last.push(array[i-1]); } cur=array[i]; // 重置统计标识 } console.log(last)}}
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
- ¥20 怎么用dlib库的算法识别小麦病虫害
- ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
- ¥15 java写代码遇到问题,求帮助
- ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
- ¥15 有了解d3和topogram.js库的吗?有偿请教
- ¥100 任意维数的K均值聚类
- ¥15 stamps做sbas-insar,时序沉降图怎么画
- ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
- ¥15 关于#Java#的问题,如何解决?