fork download
  1. import java.util.List;
  2. import java.util.Arrays;
  3. import java.util.Collections;
  4. import java.util.Comparator;
  5. import java.util.Scanner;
  6.  
  7. public class Main
  8. {
  9. public static void main(String[] args)
  10. {
  11.  
  12. List<String> array = Arrays.asList(new Scanner(System.in).nextLine().trim().split(" +"));
  13. Collections.sort(array, new StrCompare());
  14. System.out.println(array);
  15. for (String str : array)
  16. {
  17. System.out.print(str);
  18. }
  19. System.out.println();
  20. }
  21. }
  22.  
  23. class StrCompare implements Comparator<String>
  24. {
  25. @Override
  26. public int compare(String s1, String s2)
  27. {
  28. int i;
  29. int minLength = Math.min(s1.length(), s2.length());
  30. for (i = 0; i < minLength; i++)
  31. {
  32. char c1 = s1.charAt(i), c2 = s2.charAt(i);
  33. if (c1 != c2)
  34. {
  35. return (c1 > c2 ? -1 : 1);
  36. }
  37. }
  38. if (i == s1.length())
  39. {
  40. for (int i1 = 0; i < s2.length(); i1++, i++)
  41. {
  42. char c1 = s2.charAt(i1), c2 = s2.charAt(i);
  43. if (c1 != c2)
  44. {
  45. return (c1 > c2 ? -1 : 1);
  46. }
  47. }
  48. }
  49. else if (i == s2.length())
  50. {
  51. for (int i2 = 0; i < s1.length(); i++, i2++)
  52. {
  53. char c1 = s1.charAt(i), c2 = s1.charAt(i2);
  54. if (c1 != c2)
  55. {
  56. return (c1 > c2 ? -1 : 1);
  57. }
  58. }
  59. }
  60.  
  61. return 0;
  62. }
  63. }
Success #stdin #stdout 0.1s 380672KB
stdin
72562 72562725627256273 7272727272 72 727 7270 72727272727
stdout
[7272727272, 72, 727, 72727272727, 7270, 72562725627256273, 72562]
7272727272727277272727272772707256272562725627372562