无论如何,有没有办法以指数方式快速增加?

2023-12-01

我正在尝试编写一个 for 循环,其中我必须以指数方式递增。我在用stride功能,但它不会工作。 这是 C++ 代码,我正在尝试编写一个快速版本。

for (int m = 1; m <= high - low; m = 2*m){}

你能帮我用快速版本编写这段代码吗?


while 循环可能是最简单的解决方案,但这里有一个替代方案:

for m in sequence(first: 1, next: { 2 * $0 }).prefix(while: { $0 <= high - low }) {
    print(m)
}

sequence()(惰性地)生成序列 1, 2, 4, ..., 以及prefix(while:)将该序列限制在给定范围内。

这种方法的一个小优点是m仅在循环内部声明(以便以后不会意外使用它),这是一个constant这样就不会在循环内无意中修改它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无论如何,有没有办法以指数方式快速增加? 的相关文章

随机推荐

  • 用于刷新访问令牌的 Google 电子表格应用程序脚本

    我正在使用以下 HTTP 请求从关联的 YouTube 频道检索数据 https www googleapis com youtube analytics v1 reports ids channel 3D 3D MY ASSOCIATED
  • 动态条件 - 过滤 Excel VBA

    我需要根据相同的标准进行过滤 但标准的值在我收到的数据中并不总是相同 因此它们需要是动态的 for eg 将 Crit1 调暗为字符串 暴击1 So that Selection AutoFilter 字段 4 Criteria1 crit
  • 浮点值作为字典键

    我正在开发一个用于分析微量滴定板的课程 这些样本在单独的文件中进行描述 并且条目用于有序字典 关键之一是 pH 值 通常以浮点数形式给出 例如6 8 我可以将其导入为十进制Decimal 6 8 为了避免浮动作为字典键 另一种解决方案是将点
  • 从 MP3 文件/ID3 标签获取专辑封面

    我正在尝试从 MP3 文件获取专辑封面 在这种情况下我使用AVAudioPlayer播放文件 这是代码我以为将获得专辑封面 MPMusicPlayerController controller MPMusicPlayerController
  • Laravel Socialite 2.0 Facebook 身份验证仅返回 ID 和名称

    我正在使用 Laravel 的 Socialite 包 版本 2 0 0 它在 google 和 github 上运行得很好 但是当我尝试使用 facebook 登录时 我得到了这个 ErrorException in FacebookPr
  • PHP Carbon 需要分钟数并转换为天数

    我正在尝试使用 Carbon 将分钟数转换为天数 minutes 1400 我想做如下的事情 当然 这是行不通的 Carbon gt minutes minutes gt days 我找不到这方面的例子 谢谢你的帮助 未测试 但快速浏览一下
  • 如何启用MySQL客户端自动重新连接MySQLdb?

    我遇到了 PHP 的方法 my bool reconnect 1 mysql options mysql MYSQL OPT RECONNECT reconnect 但 MySQLdb python mysql 就不那么幸运了 有人可以提供
  • 如何在webpack中使用child_process

    我试图在托管 Web 应用程序时在目录中运行命令行函数 但是当我尝试运行以下代码时 它会抛出 无法解析模块 child process var exec require child process exec 它与 Webpack 一起运行
  • ArrayList 与 LinkedList

    我正在关注一个上一篇文章对此说 对于链表 得到的是 O n 加法的时间复杂度为 O 1 删除是 O n Iterator remove 的复杂度为 O 1 对于数组列表 获取的时间复杂度为 O 1 add 的分摊时间复杂度为 O 1 但最坏
  • 以十六进制表示形式显示 u8 切片

    我需要转换 u8 到十六进制表示 例如 A9 45 FF 00 特质std fmt UpperHex没有为切片实现 所以我不能使用std fmt format 铁锈有serialize hex ToHex特征 它转换 u8 到十六进制字符串
  • dialyxir mix 任务创建 PLT 退出,没有错误或创建表

    我正在尝试使用 dialyxir 通过它提供的混合任务对我的项目运行透析器分析 我已将其添加到我的依赖项中并根据自述文件进行编译 当我运行mix dialyxir plt它没有报告任何错误 但退出时没有创建表 mix dialyzer pl
  • git如何管理目录

    I know git will not see am empty dir but can someone provide a reference to some documentation on how exactly it is impl
  • 将 GET 请求参数获取到 @ViewScoped bean

    我有一个 请求范围的 列表 用户可以从中选择 PQ 链接列表 当单击或以其他方式进入浏览器时 将显示每个 PQ 的主页 每个 PQ 的页面都是以下形式 http localhost 8080 projectname main jsf id
  • WebRTC视频会议(多对多)

    我即将使用 webRTC socket io node js 构建一个视频会议系统 所以我已经阅读了 Simon Pietro Romano 的这本书作为起点 与 webRTC 的实时通信 我已经读完了它 我要运行该系统通过 100 Mbp
  • 嵌入式 Lua - 流氓脚本超时(例如无限循环) - 有人举个例子吗?

    我已将 Lua 嵌入到 C 应用程序中 我需要能够杀死那些霸占资源的流氓 即写得很糟糕的脚本 我知道我无法满足导致脚本无限期运行的每种情况 所以现在我只关注简单的 Lua 方面 即脚本方面的问题 我也知道这个问题已经在这里被问过 以各种形式
  • 在 Android 设备上运行时卡在 Meteor 示例“todos”加载屏幕上

    Issue s 当我尝试在 Android 设备上运行 Meteor todos 示例时 它永远停留在加载屏幕上 从下面的屏幕截图中可以看出 显示了以下错误消息 Failed to load resource net ERR ADDRESS
  • 将复杂的Json数据导入到hive中

    需要一点勺子喂养 如何将复杂的 json 导入到 hive 中 Json 文件格式为 some headers dump item id item 1 item id item 2 Hive 具有以下给出的字段dump Json 文件大小目
  • 处理大型 xml 文件

    我有一个大的 xml 文件 其中包含许多子元素 我希望能够运行一些 xpath 查询 我尝试在java中使用vtd xml 但有时会出现内存不足错误 因为xml太大而无法放入内存 是否有其他方法来处理如此大的 xml try http co
  • Javascript - [为什么?]将变量分配给对象[重复]

    这个问题在这里已经有答案了 为什么当我将变量分配给对象并更改该变量时 它也会更改对象 例如 c 26 a b c a 1 a 27 b 26 c 26 but z x y z x ab 5 x Object ab 5 y Object ab
  • 无论如何,有没有办法以指数方式快速增加?

    我正在尝试编写一个 for 循环 其中我必须以指数方式递增 我在用stride功能 但它不会工作 这是 C 代码 我正在尝试编写一个快速版本 for int m 1 m lt high low m 2 m 你能帮我用快速版本编写这段代码吗