基数排序(桶排序)

基数排序又叫桶排序:

先按照个位数排序,第一次排序好之后;再次按照十位数进行排序,第二次排序好之后;第三次对百位进行排序..................

实现原理图:拿出一些个类似“桶”的东西 将分别按照个位,十位,百位排序好的放到这些“桶”中,然后按照从小到大,从上到下的规则开始取值

排序的次数是该数组中位数最多的元素来决定的 例如下图中排序三次,最高位数是百

相同道理,如果位数最多元素是千的话,那就得排序四次!

 

 

 

如上所示,排序三次之后就完成了该数组的排序!每个桶大家可以想像成一个队列,具有先进先出的特点!

下面进行代码的实现:

首先得求出数组中的最大位数:

static int Get_Figure_Max(int arr[], int len)  //获取最大位数count
{
	int max = arr[0];
	for (int i = 1; i < len; i++)
	{
		if (arr[i] > max)
		{
			max = arr[i];
		}
	}
	int 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值