我只想到这种效率比较低的
import java.util.Arrays;
import java.util.LinkedHashMap;
import java.util.Scanner;
import java.util.Set;
public class Main {
 public static void main(String[] args) {
  Scanner sc=new Scanner(System.in);
  String line=sc.nextLine();
  String[] str=line.split(" ");
  int n=str.length;
  int[] array=new int[n];
  for(int i=0;i<n;i++){
   array[i]=Integer.parseInt(str[i]);
  }
  mySort(array);
  
 
 }
 private static void mySort(int[] array) {
  LinkedHashMap<Integer,Integer> map=new LinkedHashMap<>();
  
  int len=array.length;
  
  for(int i=0;i<len;i++){
   if(map.get(array[i])==null){
    map.put(array[i], 1);
   }else{
    int count=map.get(array[i]);
    count++;
    map.put(array[i], count);
   }
  }
     
  Set<Integer> key=map.keySet();
  int n=key.size();
  int[] value=new int[n];
  int j=0;
  for(int k:key){
   value[j]=map.get(k);
   j++;
  }
  
  Arrays.sort(value);
  
  for(int i=n-1;i>=0;i--){
   for(int k:key){
    if(value[i]==map.get(k)){
     for(int z=0;z<value[i];z++){
      System.out.print(k);
      System.out.print(" ");
     }
     map.put(k, 0);
    }
   }
  }
  
 }
}