我想知道有序向量(仅包含正元素)的所有元素之间的所有可能(正向)差异。for循环导致意想不到的结果
为此,我创建了另一个向量,我让它使用for循环(见代码1)。它没有导致期望的结果“1 4 6 3 5 2”,而是导致“12”。当我应用代码2(这看起来等同于代码1 ...)时,我得到期望的结果,但是......有人知道为什么下面的两个代码不会导致相同的结果吗?
代码1
a = c()
b = c(1,2,5,7)
for (i in (length(b)-1)) {
a = unique(c(a,b[(i+1):length(b)] - b[i]))
}
代码2
a = c()
b = c(1,2,5,7)
i=1
a = unique(c(a,b[(i+1):length(b)] - b[i]))
i=2
a = unique(c(a,b[(i+1):length(b)] - b[i]))
i=3
a = unique(c(a,b[(i+1):length(b)] - b[i]))
我有点不解......
事实上,我很尴尬。谢谢! – koteletje