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#,asp.net读取Excel文件并保存到Oracle数据库
- ¥15 C# datagridview 单元格显示进度及值
- ¥15 thinkphp6配合social login单点登录问题
- ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
- ¥15 如何在scanpy上做差异基因和通路富集?
- ¥20 关于#硬件工程#的问题,请各位专家解答!
- ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
- ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
- ¥30 截图中的mathematics程序转换成matlab
- ¥15 动力学代码报错,维度不匹配