Find all the sequences of consecutive repeated numbers in a numeric array, returning the indices where each sequence starts and ends. The output is a matrix nx2: the starting indices of the n sequences are in the first column, the ending indices are in the second one.
For example, if x=[0 7 7 3 8 7 1 3 5 5 5], we have that the number '7' appears consecutevely from index 2 to 3, while the number '5' from index 9 to 11, so y = [2 3; 9 11]
Solution Stats
Problem Comments
4 Comments
Solution Comments
Show comments
Loading...
Problem Recent Solvers11
Suggested Problems
-
Project Euler: Problem 8, Find largest product in a large string of numbers
1308 Solvers
-
569 Solvers
-
Generate N equally spaced intervals between -L and L
943 Solvers
-
382 Solvers
-
Remove element(s) from cell array
1994 Solvers
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
It would be nice making this working with nan and adding the repeated values as second output
Could I convince you to use isempty() for the last test, rather than isequal(..., [])? Since -- for n>0 runs in the input array -- the output is n-by-2, it is quite natural for the output to be 0-by-2 when there are no runs, but a 0-by-2 empty array is not equal to [].
The last test case has been changed to use isempty() instead of isequal().
Thanks, Dyuman!