TA的每日心情 | 开心 2019-11-19 15:19 |
|---|
签到天数: 1 天 [LV.1]初来乍到
|
你这A序列里面有形如'a,b,c,0,d,e...'这种情形中的0怎么算?算分割开'a,b,c'与'd,e'还是直到连续出现多个0才视为分割?. Z9 B C$ M1 V% W- }! T
我加了个Limit 数值,连续出现多个零时才会分割) t- q* [) Y$ _; L4 J$ l ]/ |
结果Result 与B数组一致
( M' n4 X% I8 ?( L, tLimit = 10;
2 b) r3 g" E& l6 Q2 Jidx = find(A~=0);/ E7 E$ W/ c5 Z; y9 A6 h' J
IDX = diff(idx);% [; R) S6 ^+ B$ E7 s$ N
Starting = idx( [1; find(IDX>Limit) + 1] );0 D7 H$ ^) ]& n+ e/ \3 Q( s2 B
Ending = idx( [find(IDX>Limit); end] );
4 e1 P' R7 i1 [8 j3 J* XLength = max( Ending - Starting + 1 );/ p4 ?4 s, {1 ^% a' S2 u
temp = arrayfun(@(ii) [A(Starting(ii):1:Ending(ii));zeros(Length + Starting(ii) - Ending(ii) - 1,1)],...
6 y: U( |5 b. p: s, j [1:1:numel(find(IDX>Limit))+1],'UniformOutput',false);* Y" {9 V, P8 J2 q+ | b8 i
Result = [temp{:}];
0 c5 P% A/ S( L. i# zdisp( max( max(abs(Result - B)) ) ) |
|