finding consecutive numbers in an array
    5 views (last 30 days)
  
       Show older comments
    
Hi,
I'am trying to find minimum 320 consecutive numbers in an array. Is there any simple way to find it?
2 Comments
  Jan
      
      
 on 31 Jan 2016
				
      Edited: Jan
      
      
 on 31 Jan 2016
  
			Please explain the term "consecutive numbers" in an example. Do you mean, that the difference between two neigboring numbers is +1? Or is -1 accepted also? Do you mean integer values in a double array? Which result is wanted? The first index? What exactly is "minimum 320 numbers"? I assume it is a block of 320 or more elements?
Answers (1)
  Jan
      
      
 on 31 Jan 2016
        
      Edited: Jan
      
      
 on 31 Jan 2016
  
      Data  = randi([1, 10], 1, 1e6);  % Any test data
Len   = 5;                       % 320 in your case
[B, N, Index] = RunLength(diff(Data));
Match = find(N >= Len & B == 1);
% Output to control results:
for k = 1:numel(Match)
  iResult = Index(Match(k));
  fResult = iResult + N(Match(k)) - 1;
  disp(Data(iResult:fResult));
end
2 Comments
See Also
Categories
				Find more on Performance and Memory in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
