问题标签 [infinite-sequence]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
3508 浏览

haskell - 在 Haskell 中生成一个无限序列

我知道在 Haskell 中可以实现无限序列 - 但是,我不完全确定如何生成一个

给定一个方法

它取一个整数并产生序列中的下一个整数,我将如何从中构建一个无限序列?

0 投票
1 回答
108 浏览

java - 无限列表中的搜索策略

我正在收听第 3 方网络服务,当服务启动时,它会生成我正在接收的对象流。我必须在给定的时间内搜索特定对象,并在找到该对象或在以下任何情况下抛出错误时进行一些处理:

  1. 网络服务停止,我还没有找到对象。
  2. 我的计时器到期了。
  3. 任何其他错误情况。

我想知道假设我在无限列表中搜索并且无法预测它们出现在列表中的项目顺序,那么搜索对象的最佳方法是什么?

0 投票
5 回答
777 浏览

language-agnostic - 检测具有无限输入的重复

在无限的整数序列中找到重复的最佳方法是什么?

即如果在无限序列中数字“5”出现两次,那么我们将第一次返回“false”,第二次返回“true”。

最后,我们需要一个函数,如果整数出现在前面,则返回“true”,如果函数第一次收到整数,则返回“false”。

如果有两个解决方案,一个是空间方面的,第二个是时间方面的,那么两者都提到。我会在答案中写下我的解决方案,但我认为这不是最佳解决方案。

编辑:请不要假设微不足道的情况(即没有重复,不断上升的序列)。我感兴趣的是如何降低非平凡案例的空间复杂度(具有重复的随机数)。

0 投票
2 回答
1998 浏览

clojure - clojure 中的惰性序列有什么意义?

我正在查看一些示例斐波那契序列 clojure 代码:

我大致了解发生了什么,但不明白lazy-cat. 我知道这lazy-cat是一个宏,它正在翻译成这样的东西:

究竟在lazy-seq完成什么?即使没有 ,它仍然会被懒惰地评估lazy-seq?这是否严格用于缓存目的?

编辑:感谢您的回答。我的困惑是它可以与concatREPL 中的普通文本一起使用,因为我之前在范围内绑定了 fibs。

0 投票
3 回答
1430 浏览

google-app-engine - Google App Engine 上无限循环的后果?

我不是 Google App Engine 用户。但是,我了解您需要为 CPU 时间和其他资源付费。如果您碰巧创建了无限循环,会有什么后果?谷歌会终止它,还是你必须以某种方式自己手动完成?

我是一个业余开发者,担心一个小错误可能最终导致数百人的损失。

0 投票
4 回答
1909 浏览

c# - 来自给定有限列表的 linq 无限列表

给定一个有限的元素列表,我如何创建一个(延迟评估,感谢 LINQ!)无限列表,它只是不断迭代我的初始列表?

如果初始列表是{1, 2, 3},我希望新列表返回{1, 2, 3, 1, 2, 3, 1, ...}

0 投票
2 回答
763 浏览

regex - 使用正则表达式捕获无限数量的数字?

我想在可能包含无限数量的数字的字符串上使用正则表达式获取捕获。我的直觉引导我这样做"/\.getnumbers (\d+)+\s*/",但这仅与.getnumbers命令后的第一个数字相匹配。如何编写一个正则表达式语句,该语句将在命令后捕获一个或多个数字,用一个简单的空格分隔。例如:.getnumbers 5 4 3 2 1will match (5) (4) (3) (2) (1),虽然正则表达式不是专门为匹配 5 个数字而编写的,但它可以匹配任意数量的数字。

0 投票
3 回答
141 浏览

language-agnostic - 有哪些有用或有趣的无限生成器?

无限生成器有哪些巧妙的用途?我见过很多看似微不足道的例子,比如“列出所有偶数”,但我认为肯定还有其他更适用于现实世界场景的例子。具体示例(使用任何支持生成器的语言)表示赞赏!

我将给出一个简单的示例作为答案。

0 投票
1 回答
699 浏览

sml - SML 中的无限序列


我必须编写一个函数来接收一个序列(有限或无限)并返回一个相同的序列,唯一的区别是如果在序列期间发生异常,则该函数将序列返回到它的开头。
换句话说,该函数必须返回一个循环序列,该序列在结束时会重复自身。我必须用句柄捕捉异常。
以下示例必须有效。

  • listToSeq [1,2];
    val it = Cons (1,fn) : int seq
  • restartOnError 它;
    val it = Cons (1,fn) : int seq
  • 尾随它;
    val it = Cons (2,fn) : int seq
  • 尾随它;
    val it = Cons (1,fn) : int seq
  • 尾随它;
    val it = Cons (2,fn) : int seq

有人能帮我吗 ?

0 投票
10 回答
5832 浏览

ruby - 遍历 Ruby 中的无限序列

我正在尝试解决 Project Euler 问题 #12:

三角形数的序列是通过添加自然数生成的。所以第 7 个三角形数是 1 + 2 + 3 + 4 + 5 + 6 + 7 = 28。前十项是:

让我们列出前七个三角形数的因数:

我们可以看到 28 是第一个有五个以上除数的三角形数。第一个有超过 500 个除数的三角形数的值是多少?

这是我使用 Ruby 提出的解决方案:

我不应该使用像 9_999_999_999_999_999 这样的任意大数字。如果我们有像某些函数式语言那样的 Math.INFINITY 序列会更好。如何在 Ruby 中生成惰性无限序列?