/编辑:感谢您的帮助到目前为止,但是我没有任何解决方案来获取样本输入并提供样本输出.我的描述并不是最清楚的,对不起.
我有一个由二进制数据组成的数组.我想要做的是确定每个不间断的1或0段的长度.
说我有这样的数据:
0111010001110
Run Code Online (Sandbox Code Playgroud)
在binaryArray我需要翻译成的数组中:
0100110
Run Code Online (Sandbox Code Playgroud)
存储在nwArray其中,0代表一个窄(小于3位长),并1表示宽(> 3位长).我不关心二进制值,而是关注每个组件的长度.我不确定这种解释是否有意义.
这就是我的意思; 它不起作用,我明白为什么,但我想不出一个好的解决方案.
for(x=0;x<1000;x++){
if(binaryArray[x]==binaryArray[x+1]){
count++;
if(count>=3){
nwArray[y]=1;
y++;
count=0;
}
}else{
if(barcodeArray[x]){
nwArray[y]=0;
}
}
}
Run Code Online (Sandbox Code Playgroud)
这样做吗?
int count = 0;
for (x=0; x<1000;x++)
{
if (binaryArray[x] != binaryArray[x+1])
{
if (count < 3)
nwArray[y]=0;
else
nwArray[y]=1;
y++;
count = 0;
}
else
count++;
}
Run Code Online (Sandbox Code Playgroud)