除非有真正的效率需求,否则我会为了简单性和可读性而拍摄:
- 对数组进行排序
- 使用条件连接终端将其送入for循环
- 使用反馈节点获取最后一个值
- 如果此值为> 0且!=为最后一个值,请将true发送到连接终端。
醇>
你总是可以和> 0和!=一起测试并直接连接到连接终端。
for循环中的输出数组将是您正在寻找的内容。
我喜欢Vivien使用Threshold 1D Array
和Array Subset
删除负值,但在删除零之前旋转和减去似乎不必要的复杂。这是一个带有For
循环,移位寄存器和条件索引的解决方案:
请注意,我们必须用某些东西初始化移位寄存器,否则它会记住前一次运行的数据,给出不需要的行为(反馈节点也是如此) - 所以我们确保第一个数组元素将通过确保初始化值不等于第一个元素来包含它。