This is the next step up from Problem 42811.
Given a vector, v, of real numbers (negative or positive), return a vector, w, by sorting v in ascending order, such that primary sorting is done by the first digit (representing the largest value), secondary sorting by the second digit (next largest value), and so on.
Example:
v = [14.38 80.42 3.14 268 -14.38 210 1 80.44];
w = [1 -14.38 14.38 210 268 3.14 80.42 80.44];
As shown above, in cases of multiple numbers starting with the same digits, such as 1 and 14.38, shorter numbers take precedence.
Negative numbers take precedence over positive numbers.
Solution Stats
Problem Comments
Solution Comments
Show commentsProblem Recent Solvers58
Suggested Problems
-
Determine whether a vector is monotonically increasing
23347 Solvers
-
Which values occur exactly three times?
5248 Solvers
-
Rotate input square matrix 90 degrees CCW without rot90
692 Solvers
-
657 Solvers
-
Mysterious digits operation (easy)
327 Solvers
More from this Author45
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!