Problem 42815. Sorting integers by their digits (Level 3)
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 Solvers47
Suggested Problems
-
Remove any row in which a NaN appears
8588 Solvers
-
Find the two most distant points
2836 Solvers
-
Number of 1s in the Binary Representation of a Number
444 Solvers
-
Flag largest magnitude swings as they occur
678 Solvers
-
Calculate the Number of Sign Changes in a Row Vector (No Element Is Zero)
719 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!