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 Solvers60
Suggested Problems
-
Project Euler: Problem 7, Nth prime
1780 Solvers
-
1434 Solvers
-
Convert a vector into a number
621 Solvers
-
Remove the two elements next to NaN value
713 Solvers
-
Remove element(s) from cell array
2120 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!