不连续数字个数 用matlab怎么实现有一组数据,比如1,2,3,5,6,8,10,11,12,14,16,17.如果数字有间隔就加1,即123记为1,56记为2,8记为3,101112记为4,14记为5,1617记为6.请问用matlab怎么实现呢.实际数组个数很大
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/07 21:26:00
不连续数字个数 用matlab怎么实现有一组数据,比如1,2,3,5,6,8,10,11,12,14,16,17.如果数字有间隔就加1,即123记为1,56记为2,8记为3,101112记为4,14记为5,1617记为6.请问用matlab怎么实现呢.实际数组个数很大
不连续数字个数 用matlab怎么实现
有一组数据,比如1,2,3,5,6,8,10,11,12,14,16,17.如果数字有间隔就加1,即123记为1,56记为2,8记为3,101112记为4,14记为5,1617记为6.请问用matlab怎么实现呢.实际数组个数很大
还需要从新数组中能查到某个index对应原数组哪几个index.比如老数组第10000个对应原数组中哪几个数字
不连续数字个数 用matlab怎么实现有一组数据,比如1,2,3,5,6,8,10,11,12,14,16,17.如果数字有间隔就加1,即123记为1,56记为2,8记为3,101112记为4,14记为5,1617记为6.请问用matlab怎么实现呢.实际数组个数很大
l=length(a);
m=1;
aa=num2str(a(1));
p=num2str(a(1));
for k=2:l
b(m)=str2num(aa);
c(m)=str2num(p);
if a(k)-a(k-1)==1
aa=strcat([num2str(aa),num2str(a(k))]);
p=strcat([p,num2str(k)]);
else m=m+1; aa=num2str(a(k));p=num2str(k);
end
end
b,c
这样得到的b就是所求的新数组,c就是新数组的元素对应的原数组的下标
比如c(9)就是新数组中第九个元素对应的原数组的下标