问题标签 [seq]

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 投票
5 回答
387 浏览

algorithm - 根据匹配规则按连续对过滤数组或列表

这可能是微不足道的,我确实有一个解决方案,但我对此并不满意。不知何故,(很多)更简单的形式似乎不起作用,并且在角落案例(第一个或最后一个匹配对)周围变得混乱。

为简单起见,我们将匹配规则定义为任何两个或多个相差为 2 的数字。例子:

> filterTwins [1; 2; 4; 6; 8; 10; 15; 17]
val it : int list = [2; 4; 6; 8; 10; 15; 17]

我目前使用的代码是这样的,只是感觉草率和超重:

我打算用我自己的原始练习来试验List.foldBack大列表和并行编程(进展顺利),但最终弄乱了“简单”的部分......

引导答案

  • 丹尼尔的最后,113个字符*,易学,慢
  • Kvb 的第 2 个,106 个字符*(如果我包含该函数),很简单,但返回值需要工作
  • 斯蒂芬的第二部,397 个字符*,冗长而复杂,但最快
  • Abel 的,155 个字符*,基于 Daniel 的,允许重复(这不是必需的,顺便说一句)并且相对较快。

有更多的答案,但我相信以上是最明显的。希望我接受丹尼尔的答案作为解决方案不会伤害任何人的感情:每一个解决方案都应该成为选定的答案(!)。

* 以函数名作为一个字符进行计数

0 投票
1 回答
2382 浏览

r - R时间序列,复杂序列

我试图在 R 中合并两个不同的时间序列,具有以下特征:

  1. 数据必须在每天 08:30 到 15:00 之间。
  2. 数据跨越数周,而不仅仅是某一天。
  3. 数据中存在随机间隔的间隙。
  4. 两个数据集不一定会有相同间隔的间隙

我想合并这两个数据集,所有时间都在 08:30 到 15:00 的序列中,并且每个数据集都有一个间隙,我希望之前的值(或之后的值)结转。

詹姆斯,关于问题 1,你是对的。谢谢。我验证了 csv 文件两次提取数据并删除数据修复了问题。我也将您的解决方案用于问题 2,但我不确定这是做我想做的事情的最有效方法。最终我可能想用它来运行回归,此时可能需要某种循环来提取任意数量的数据集。我可能会进行的任何优化将不胜感激。

更新的解决方案

0 投票
1 回答
412 浏览

f# - 如何从序列的迭代中提前返回?

给定一个谓词“p”,它告诉我们一个解决方案是否足够好。一个成本函数“f”,它告诉一个可能的解决方案有多好,一个函数在一系列可能的解决方案中搜索“最佳”(即最低成本)解决方案。取消评估的惯用方式如何 - 如果谓词确保当前解决方案“足够好” - 看起来像。

即类似的东西:

0 投票
5 回答
454 浏览

java - 生成相邻子集的序列(从列表列表中)

我有一个矩阵(数组的数组)的形式

并且想要生成该矩阵的序列,该矩阵彼此跟随并且(转换为字符串)与索引 0(最顶部)处的数组的长度相同。因此,即结果将是

我想要实现的是获得一个字符串的所有部分,这些部分可以直接相互连接并拆分 i 个子数组(如示例所示)。

实现语言无关紧要,但最好是 Python、java、ruby、C#、clojure、Psudo 代码或其他相当高级别的语言。

0 投票
2 回答
2374 浏览

postgresql - clojure:如何将 jdbc4array 转换为 clojure 的 seq?

我尝试使用 jdbc 从数据库中查询数据。问题是某些列是数组类型。

如何将此数组转换为 clojure 中的 seq/vector ?我试过 (seq jdbc-array) 和 (seq (.getArray jdbc-array) 但两者都不起作用......

0 投票
1 回答
231 浏览

f# - 怎么打开seq> 或其他方式制作 Seq.collect(fun x -> x)

所以,我只是觉得这个序列的最后一部分(2 个字符串)很奇怪。我可以用另一种方式打开序列吗?List.ofSeq() 在这里不起作用。

谢谢你。

0 投票
3 回答
1524 浏览

f# - 将使用 2 个序列的 Seq.map 应用于采用 2 个参数的方法

我正在编写一个快速的 DB 性能测试,并选择了 F#,这样我可以得到更多的练习。

我创建了一个方法,measureSelectTimes它具有签名Guid list * Guid list -> IDbCommand -> TimeSpan * TimeSpan

然后,我称之为:

我已经用类型明确地注释了以澄清。

我想不通的是如何在measureSelectTimes没有 lambda 的情况下调用。我想像这样部分应用ids它:ids |> Seq.map measureSelectTimes但是我不知道如何处理生成的部分应用函数然后映射到cmds. 这个的语法是什么?

0 投票
7 回答
98336 浏览

bash - bash seq 替换中的变量 ({1..10})

是否有可能做这样的事情:

0 投票
4 回答
2187 浏览

f# - 初始化 BigInteger 的无限列表

好的,所以我需要一个所有正整数的列表。首先想到的是:

但 initInfite 实际上并不是 infitint:http: //msdn.microsoft.com/en-us/library/ee370429.aspx (与 bigint 不同)它唯一的:Int32.MaxValue = 2,147,483,647 远远不够大。

目前我的计划是用某种手工类(可能是 IEnumerable)替换序列。它会很简单(并且可能对我的使用更有效)但我想知道如何做到这一点

0 投票
3 回答
148872 浏览

r - 按顺序创建重复值序列?

我需要一个重复的数字序列,即1 1 ... 1 2 2 ... 2 3 3 ... 3 etc.我实现这个的方式是:

这可行,但很笨拙,并且显然不能很好地扩展。

如何按顺序重复 N 个整数 M 次?

  • 我尝试了嵌套seq()rep()但这并没有达到我想要的效果。
  • 我显然可以编写一个 for 循环来做到这一点,但应该有一种内在的方式来做到这一点!