Java 对数字(如number=584)及其输出(如Sorted_number=458)进行排序 公共类分类号{ 公共静态void main(字符串[]args){ 整数=845,温度=0,排序数=0; 而(数量>0){ 温度=数字%10; 如果(温度0){ 温度=数字%10; arr[temp]=arr[temp]+1; 数目/=10; } 对于(int i=0;iHint:您可以使用“计数排序”对于这个。怎么做?你能告诉我吗?对数字的位数进行计数排序。怎么做?你写代码。说真的,这看起来像是一个家庭作业,让我们为你做家庭作业你什么也学不到。我可以建议。我们知道只有10位数。只需创建一个包含10个元素的数组int[]array=new int[10];然后当你得到一个数字做一个数组[digit]++,现在数组索引-数字,数组值-计数(数字中有多少个数字)。只需在数组上迭代并打印每个索引,每个索引可能是数组[index]值的倍。你能开始写你在数字中找到的所有4吗?我没有得到这个:arr[temp]=arr[temp]+1、 您是否尝试过此解决方案。arr[temp]=arr[temp]+1;它用于重复的数字,如122或545。要解决此问题,我们需要计算该数字的存在。 public static void sort(int number){ int[] arr = new int[10]; int temp = 0; while (number>0){ temp = number%10; arr[temp] = arr[temp]+1; number /= 10; } for(int i=0;i<arr.length;i++){ if(arr[i] !=0) { for (int j = 1; j <= arr[i]; j++) System.out.print(i); } } }

Java 对数字(如number=584)及其输出(如Sorted_number=458)进行排序 公共类分类号{ 公共静态void main(字符串[]args){ 整数=845,温度=0,排序数=0; 而(数量>0){ 温度=数字%10; 如果(温度0){ 温度=数字%10; arr[temp]=arr[temp]+1; 数目/=10; } 对于(int i=0;iHint:您可以使用“计数排序”对于这个。怎么做?你能告诉我吗?对数字的位数进行计数排序。怎么做?你写代码。说真的,这看起来像是一个家庭作业,让我们为你做家庭作业你什么也学不到。我可以建议。我们知道只有10位数。只需创建一个包含10个元素的数组int[]array=new int[10];然后当你得到一个数字做一个数组[digit]++,现在数组索引-数字,数组值-计数(数字中有多少个数字)。只需在数组上迭代并打印每个索引,每个索引可能是数组[index]值的倍。你能开始写你在数字中找到的所有4吗?我没有得到这个:arr[temp]=arr[temp]+1、 您是否尝试过此解决方案。arr[temp]=arr[temp]+1;它用于重复的数字,如122或545。要解决此问题,我们需要计算该数字的存在。 public static void sort(int number){ int[] arr = new int[10]; int temp = 0; while (number>0){ temp = number%10; arr[temp] = arr[temp]+1; number /= 10; } for(int i=0;i<arr.length;i++){ if(arr[i] !=0) { for (int j = 1; j <= arr[i]; j++) System.out.print(i); } } },java,Java,我已经写了一些代码,但它不工作。请告诉我没有任何方法可以对数字进行排序的简单代码。以下是解决您问题的简单代码片段。类似于@Maxim的解决方案 public class SortingNumber { public static void main(String[] args) { int number = 845, temp=0, sorted_number=0; while (number>

我已经写了一些代码,但它不工作。请告诉我没有任何方法可以对数字进行排序的简单代码。

以下是解决您问题的简单代码片段。类似于@Maxim的解决方案

    public class SortingNumber {
            public static void main(String[] args) {
                int number = 845, temp=0, sorted_number=0;
                while (number>0){
                    temp = number%10;
                    if(temp < sorted_number){
                        sorted_number = temp;
                        System.out.println(sorted_number);
                    } else {
                        System.out.println(temp);
                    }
                    number /= 10;
                }
            }
        }
公共静态无效排序(整数){
int[]arr=新的int[10];
内部温度=0;
而(数量>0){
温度=数字%10;
arr[temp]=arr[temp]+1;
数目/=10;
}

对于(int i=0;iHint:您可以使用“计数排序”对于这个。怎么做?你能告诉我吗?对数字的位数进行计数排序。怎么做?你写代码。说真的,这看起来像是一个家庭作业,让我们为你做家庭作业你什么也学不到。我可以建议。我们知道只有10位数。只需创建一个包含10个元素的数组int[]array=new int[10];然后当你得到一个数字做一个数组[digit]++,现在数组索引-数字,数组值-计数(数字中有多少个数字)。只需在数组上迭代并打印每个索引,每个索引可能是数组[index]值的倍。你能开始写你在数字中找到的所有4吗?我没有得到这个:arr[temp]=arr[temp]+1、 您是否尝试过此解决方案。arr[temp]=arr[temp]+1;它用于重复的数字,如122或545。要解决此问题,我们需要计算该数字的存在。
public static void sort(int number){
    int[] arr = new int[10];
    int temp = 0;
    while (number>0){
        temp = number%10;
        arr[temp] = arr[temp]+1;
        number /= 10;
    }

    for(int i=0;i<arr.length;i++){

        if(arr[i] !=0) {
            for (int j = 1; j <= arr[i]; j++)
                System.out.print(i);
        }
    }
}