0

有人知道如何使用 APLX 从位掩码中删除单 1 吗?示例:1 0 1 1 1 0 0 1 0 1 到 0 0 1 1 1 0 0 0 0 0

非常感谢提示。

4

2 回答 2

1

这是一种方式:

      b←1 0 1 1 1 0 0 1 0 1
      1↓e∧(¯1⌽e)∨1⌽e←0,b
0 0 1 1 1 0 0 0 0 0

如果原始向量中有一个 1,它会给出一个 1,无论是在 1 之后还是在 1 之前。

于 2014-03-09T23:57:07.983 回答
0

这是一种方法。首先,使用 find 函数定位所有出现的 2 个连续 1,然后使用移位和比较技术将所有 1 的运行扩展 1:

      a←1 0 1 1 1 0 0 1 0 1
      b←1 1⍷a
      b
0 0 1 1 0 0 0 0 0 0
      b∨0,¯1↓b
0 0 1 1 1 0 0 0 0 0
于 2014-03-09T16:36:30.627 回答