Problem 875. Return a list sorted by number of consecutive occurrences
Inspired by Problem 38 by Cody Team. Given a vector x, return a vector y of the values in x sorted by the number of CONSECUTIVE occurrences in x. Ties (and it is the difficulty) are sorted from lowest to highest. So if x = [1 2 2 2 3 3 7 7 93] then
y = [2 3 7 1 93]
But if x = [1 1 2 2 2 3 3 7 7 1 93] then
y = [2 1 3 7 1 93]
Update - Test case added 22-8-22
Solution Stats
Problem Comments
-
5 Comments
Show
2 older comments
Berkay Dogus
on 1 Aug 2018
I agree with J.R.! Menzinger. Correct answers given are wrong.
goc3
on 2 Aug 2018
No, the provided answers in the test cases are correct. This is "the difficulty" that Jean-Marie mentions above: for integers that are tied by number of occurrences, they are to be sorted within the tied subset in ascending order, not kept in the original ordering within the vector.
Kleber Zuza Nobrega
on 20 Apr 2021
Do you mind do explain in a different way? it is not clear for what exactly i should do. It miss 3 problems for me, but in any of them it is not clear the problem itself.
Solution Comments
Show commentsGroup

Indexing I
- 27 Problems
- 237 Finishers
- Piecewise linear interpolation
- Longest run of consecutive numbers
- Construct an index vector from two input vectors in vectorized fashion
- Getting the indices from a matrix
- First non-zero element in each column
- Return unique values without sorting
- Return a list sorted by number of consecutive occurrences
- intersection of matrices
- Generate N equally spaced intervals between -L and L
- Check if number exists in vector
- Replicate elements in vectors
- We love vectorized solutions. Problem 1 : remove the row average.
- intersection of matrices
- Generate N equally spaced intervals between -L and L
- Create logical matrix with a specific row and column sums
- Return a list sorted by number of consecutive occurrences
- Replicate elements in vectors
- Get the elements of diagonal and antidiagonal for any m-by-n matrix
- Getting the indices from a matrix
- Check if number exists in vector
- Fill a zeros matrix
- Set the array elements whose value is 13 to 0
- Construct an index vector from two input vectors in vectorized fashion
- Joining Ranges
- Remove the two elements next to NaN value
- Reindex a vector
- Longest run of consecutive numbers
- Put two time series onto the same time basis
- Getting logical indexes
- Matrix indexing with two vectors of indices
- middleAsColumn: Return all but first and last element as a column vector
- Return elements unique to either input
- "Low : High - Low : High - Turn around " -- Create a subindices vector
- Return unique values without sorting
- Find the largest value in the 3D matrix
- Specific Element Count
- First non-zero element in each column
Problem Recent Solvers390
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!