编辑代码

using System;

public class HelloWorld
{
    public static void Main()
    {
       int i = 0;
        int[] arr = {2,0,60,20,32};
        for (i = 0; i < arr.Length; i++)
        {
            Console.Write(arr[i] + "\t");
        }
        Console.WriteLine();

        sort(arr);

        foreach (int x in arr)
        {
            Console.Write(x + "\t");
        }
        Console.WriteLine();
    }

    static void sort(int[] arr)
    {
        //找出数组中的最大值
        int max = arr[0];
        for (int i = 1; i < arr.Length; i++)
        {
            if (arr[i] > max)
            {
                max = arr[i];
            }
        }
        //初始化计数数组
        int[] countArr = new int[max + 1];

        //计数
        for (int i = 0; i < arr.Length; i++)
        {
            countArr[arr[i]]++;
            arr[i] = 0;
        }

        //排序
        int index = 0;
        for (int i = 0; i < countArr.Length; i++)
        {
            if (countArr[i] > 0)
            {
                arr[index++] = i;
            }
        }
    }
}