欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【经典算法:基数排序的小例子】,下面是详细的讲解!
经典算法:基数排序的小例子
//基数排序 C# Code
public static void RadixSort(int[] nums, int digit)
{
for (int k=1; k <=digit; k++)
{
int[] tmpArray=new int[nums.Length];
int[] tmpCountingSortArray=new int[10];
int i;
for (i=0; i < nums.Length; i++)
{
int tmpSplitDigit=nums[i] / (int)Math.Pow(10, k - 1) - (nums[i] / (int)Math.Pow(10, k)) * 10;
tmpCountingSortArray[tmpSplitDigit]++;
}
for (i=1; i < tmpCountingSortArray.Length; i++)
{
tmpCountingSortArray[i] +=tmpCountingSortArray[i - 1];
}
for (i=nums.Length - 1; i >=0; i--)
{
int tmpSplitDigit=nums[i] / (int)Math.Pow(10, k - 1) - (nums[i] / (int)Math.Pow(10, k)) * 10;
tmpArray[tmpCountingSortArray[tmpSplitDigit] - 1]=nums[i];
tmpCountingSortArray[tmpSplitDigit]--;
}
for (i=0; i < nums.Length; i++)
{
nums[i]=tmpArray[i];
}
}
}
//int[] list=new[] { 16, 14, 10, 8, 7, 9, 3, 2, 4, 1 };
//Sorter.RadixSort(list, 2);
关于经典算法:基数排序的小例子的用户互动如下:
相关问题:
答: >>详细
相关问题:
答: >>详细
相关问题:
答: >>详细
- 【asp】asp.net url重写浅谈-net-url重写
- 【DataSet】DataSet、DataTable、DataRow区别详解
- 【asp】asp.net 动态添加多个用户控件-net-动态添
- 【ASP】ASP.NET中内嵌页面代码的一个问题-NET-内
- 【As】Asp.net中的页面乱码的问题-sp--pn-ne-et
- 【增加记录】asp.net中获取新增加记录的ID Access
- 【创建】ASP.NET Web API教程 创建域模型的方法详
- 【Asp】Asp.net 页面调用javascript变量的值-net-
- 【ASP】ASP.NET 5升级后如何删除旧版本的DNX-NET5
- 【404页面】ASP.NET设置404页面返回302HTTP状态码
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
