How can I find elements in sequence in an array?
    9 views (last 30 days)
  
       Show older comments
    
    ishita agrawal
 on 23 May 2017
  
    
    
    
    
    Commented: ishita agrawal
 on 24 May 2017
            I have an array of numbers. I want to find set of numbers for which difference of two consecutive numbers is 1. For example, I have a sequence [2,3,6,8,9,10,12,14,16,17]. How can I extract position of (2,3), (8,9,10), (16,17)? I also want to save the output in a new array.
0 Comments
Accepted Answer
  Azzi Abdelmalek
      
      
 on 23 May 2017
        v=[2,3,6,8,9,10,12,14,16,17]
id=[10 diff(v) 10]==1
ii1=strfind(id,[0 1])
ii2=strfind(id,[ 1 0])
3 Comments
  Jan
      
      
 on 23 May 2017
				To avoid a collision with the elements on the margins:
id = [false, diff(v)==1, false];
More Answers (0)
See Also
Categories
				Find more on Matrices and Arrays 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!

