【发布时间】:2019-02-10 12:50:40
【问题描述】:
【问题讨论】:
-
我不太清楚你的意思。你想要什么作为向量 [0 0 0 1 1 0 1 0 1 1 1 1] 的输出?您是否期望一个向量详细说明每个部分的长度 [3 2 1 1 1 4]?
标签: matlab
【问题讨论】:
标签: matlab
您可以像这样使用diff 和find:
a = [ 0 0 0 1 1 0 0 1 1 1 1 0 1];
result = diff(find([ 1 diff(a) 1]))
result =
3 2 2 4 1 1
或者,其他例子:
a = [ 1 1 0 0 0 0 1 0 1 0 0 0 0 0 1 1 1]
result = diff(find([ 1 diff(a) 1]))
result =
2 4 1 1 1 5 3
【讨论】: