Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
计算Ruby中的导数([i]-[i-1])_Ruby_Algorithm_Derivative - Fatal编程技术网

计算Ruby中的导数([i]-[i-1])

计算Ruby中的导数([i]-[i-1]),ruby,algorithm,derivative,Ruby,Algorithm,Derivative,使用for循环或每个_和_索引都很简单,只是想知道是否有更好的方法使用Ruby语法 我需要创建一个新数组,它是源数组的派生,例如: for(int i = 1; i < oldArray.length; i++) { newArray[i] = oldArray[i] - oldArray[i-1] } for(int i=1;i

使用for循环或每个_和_索引都很简单,只是想知道是否有更好的方法使用Ruby语法

我需要创建一个新数组,它是源数组的派生,例如:

for(int i = 1; i < oldArray.length; i++)
{
    newArray[i] = oldArray[i] - oldArray[i-1]
}
for(int i=1;i

Enumerable#使用块大小为2但没有块调用的每个_cons
返回一个枚举器,该枚举器将在
old_数组中的每对连续元素上迭代。然后我们只需使用
map
对每一对进行减法运算。

嘿,在我还没来得及输入我的之前就挑选一个获胜者是不公平的:-PI刚刚在[1,2,3,4]上运行了它,我得到[1,1,1]。你确定你没有考虑每一个片段吗?这样就得到了[1,1]。我认为编写的代码需要1.8.7。但是,您可以将其编写为“old_array.enum_cons(2).map{| x,y | y-x}”,它也可以在以前的版本中使用
last=0
new = old.map{|v|x=v-last;last=v;x}[1..-1]
old_array.each_cons(2).map{|x, y| y - x}