剑指Offer——和为S的连续正数序列(JS实现)
发布日期:2021-06-30 15:20:27
浏览次数:2
分类:技术文章
本文共 870 字,大约阅读时间需要 2 分钟。
题目描述
解题思路
- 使用left和right两个变量来代替滑动窗口的左边界和右边界。
- 核心while循环的条件是:只要左边界 小于 目标值的一半就要进入循环,只要不小于循环结束,说明此时已经找到完了。
- 定义temp变量,用来存放滑动窗口中的所有元素的和。
- 当temp小于target的值的时候,右边界向右扩一个。
- 当temp大于target的时候,左边向右一个
实现代码
var findContinuousSequence = function(target) { let left = 1; let right = 1; let arr = []; let temp = 0; // 下面的这个result数组是用来返回的 let result = []; // 核心判断条件是当 left >= target/2 的时候 left + tight >= target while (left < (target/2)) { while (temp < target) { temp = temp + right; arr.push(right); right += 1; } while (temp > target) { temp = temp - left; arr.shift(); left += 1; } if (target === temp) { temp = temp - left; left++; result.push([...arr]); arr.shift(); } } return result;};
转载地址:https://jiapy.blog.csdn.net/article/details/115278463 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
表示我来过!
[***.240.166.169]2024年04月14日 19时47分30秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Android 开发学习笔记 00 - Getting Started
2019-04-30
【学习笔记】Android Activity
2019-04-30
location区段
2019-04-30
nginx访问控制、基于用户认证、https配置
2019-04-30
linux内存的寻址方式
2019-04-30
how2heap-double free
2019-04-30
how2heap-fastbin_dup_consolidate
2019-04-30
fmt在bss段(neepusec_easy_format)
2019-04-30
tensorflow 数据格式
2019-04-30
tf keras SimpleRNN源码解析
2019-04-30
MyBatisPlus简单入门(SpringBoot)
2019-04-30
攻防世界web进阶区web2详解
2019-04-30
xss-labs详解(上)1-10
2019-04-30
xss-labs详解(下)11-20
2019-04-30
攻防世界web进阶区ics-05详解
2019-04-30
攻防世界web进阶区ics-04详解
2019-04-30
sql注入总结学习
2019-04-30
Python 之 histogram直方图
2019-04-30
Python实现决策树 Desision Tree & 可视化
2019-04-30