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 MYSQL 多表拼接link
- ¥15 关于某款2.13寸墨水屏的问题
- ¥15 obsidian的中文层级自动编号
- ¥15 同一个网口一个电脑连接有网,另一个电脑连接没网
- ¥15 神经网络模型一直不能上GPU
- ¥15 pyqt怎么把滑块和输入框相互绑定,求解决!
- ¥20 wpf datagrid单元闪烁效果失灵
- ¥15 券商软件上市公司信息获取问题
- ¥100 ensp启动设备蓝屏,代码clock_watchdog_timeout
- ¥15 Android studio AVD启动不了