TA的每日心情  | 开心 2019-11-19 15:19 | 
|---|
 
  签到天数: 1 天 [LV.1]初来乍到  
 | 
	
    
你这A序列里面有形如'a,b,c,0,d,e...'这种情形中的0怎么算?算分割开'a,b,c'与'd,e'还是直到连续出现多个0才视为分割?* ~2 p/ B( a* B- d  O2 {9 H; x 
我加了个Limit 数值,连续出现多个零时才会分割 
# o! e, }/ y7 A1 N/ W结果Result 与B数组一致5 A  a+ z/ p' `& ^ 
Limit = 10; 
$ G+ u2 g( m0 Sidx = find(A~=0); 
4 T' E4 x9 X8 g7 }% t+ dIDX = diff(idx);9 ^: w9 i6 O2 ^0 u4 M 
Starting = idx( [1; find(IDX>Limit) + 1] );" a  @! }1 Z. s: R 
Ending = idx( [find(IDX>Limit); end] );3 e6 a, `" e8 T1 `2 Z 
Length = max( Ending - Starting + 1 ); 
% I* ?$ k7 g' b# u5 t- ^temp = arrayfun(@(ii) [A(Starting(ii):1:Ending(ii));zeros(Length + Starting(ii) - Ending(ii) - 1,1)],...- S8 ~$ b+ ?. t6 k0 d; T# w# ` 
    [1:1:numel(find(IDX>Limit))+1],'UniformOutput',false); 
# j4 T" A1 C+ [* _& i9 E3 cResult = [temp{:}]; 
$ n, ~# o9 @$ e: l, g, N4 w, Xdisp( max( max(abs(Result - B)) ) ) |   
 
 
 
 |