TA的每日心情 | 开心 2019-11-19 15:19 |
---|
签到天数: 1 天 [LV.1]初来乍到
|
你这A序列里面有形如'a,b,c,0,d,e...'这种情形中的0怎么算?算分割开'a,b,c'与'd,e'还是直到连续出现多个0才视为分割?* v$ C) [/ ?# z; e6 W
我加了个Limit 数值,连续出现多个零时才会分割
8 H/ |7 x; Y6 T7 H7 {0 n结果Result 与B数组一致- u6 {4 n6 m/ Z5 I
Limit = 10;/ O' v8 B3 m7 x: g/ S
idx = find(A~=0);
! R0 o0 |5 m u8 f# NIDX = diff(idx);
- P% T+ I Q ?; i6 A. [Starting = idx( [1; find(IDX>Limit) + 1] );2 [3 U# b B! C0 J* g. [( k
Ending = idx( [find(IDX>Limit); end] );
7 X* C; R4 d) |* i1 E, [" xLength = max( Ending - Starting + 1 );
; _2 t& T, ~( p: vtemp = arrayfun(@(ii) [A(Starting(ii):1:Ending(ii));zeros(Length + Starting(ii) - Ending(ii) - 1,1)],...
1 ~9 E4 C& x7 _: A% G. o" E, R [1:1:numel(find(IDX>Limit))+1],'UniformOutput',false);
$ B% _4 P+ J# z5 \8 r$ p1 [' kResult = [temp{:}];: v! D, e& {* r& F3 W1 j$ L
disp( max( max(abs(Result - B)) ) ) |
|