计数排序:一个无序的数组,传入方法中,在方法中定义一个临时变量,临时数组的长度是传入的数组中最大的值或者设一个比较大的都行,就这就遍历传入的无序的数组,临时数组的下标的值等于传入无序数组的值,接着临时数组的值就加加(++);最后遍历临时数,把临时数组中的值存入传入的无序数组中,从大到小或者从小到大都行。按需排序。
实现代码:
public static void CountSort(int[]array)
{
//数组长度依据你传入数组中最大值是多少,或者设置一个比较大的都行
int temp=new int[50];
for(int index=0;index<array.Length;index++)
{
temp[array[index]]++;
}
int n=0;
for(int index=0;index<temp.Length;index++)
{
while(temp[index]>0)
{
array[n++]=index;
count--;
}
}
}