我有一个像这样的数组:
[0 0 0 0 1 1 1 1 1 0 0 0 0 1 1 1 0 0 0 1 1 ... ]
Run Code Online (Sandbox Code Playgroud)
我想找到0更改为1和1的索引更改为0.所以对于以下数组:
changes = [5 10 14 17 20]
Run Code Online (Sandbox Code Playgroud)
我知道如何使用find和矢量谓词表达式find(A > 3)来搜索更简单的条件,但这让我陷入困境.我可以编写一个大循环并执行它,但我觉得必须有内置的东西或者更容易实现相同的东西.
一个非常简单的方法,适用于所有值作为开始将是:
changes = find(diff(value))+1;
Run Code Online (Sandbox Code Playgroud)
这也将返回预期结果changes = [5 10 14 17 20].