基数排序

原创 2015年11月19日 22:28:10

 

 

#include<iostream>
#include<iomanip>
#include<cmath>
#define BASE 10
using namespace std;

void base_sort(int arr[], int n, int num_length)
{
	int i = 1;
	int flag = 1;
	while (i <= num_length)
	{
		int length = 1;
		int A = static_cast<int>(pow(BASE, i));
		int B = static_cast<int>(pow(BASE, i - 1));
		
		do{
			for (int k = 0; k+1 <= n - 1; k++)
			{
				if (arr[k] % A / B  > arr[k+1] % A / B)
				{
					int t = arr[k];
					arr[k] = arr[k+1];
					arr[k+1] = t;
					flag = 1;
				}
				
			}
			length++;

		} while ((length < n) && (flag == 1));
		
		++i;
	}
}

void main()
{
	int arr[] = { 100, 209, 105, 117, 218, 326, 212, 414, 323, 111 };
	int length = sizeof(arr) / sizeof(int);
	for (int i = 0; i < length; i++)
		cout << arr[i] << " ";
	cout << endl;

	base_sort(arr, length, 3);
	for (int i = 0; i < length; i++)
		cout << arr[i] << " ";
	cout << endl;
	system("pause");
}


 

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

基数排序法by队列

基数排序算法 java实现

  • 2012-02-20 15:54
  • 32KB
  • 下载

基数排序

基数排序算法(递归实现): package com.zq.algorithm.sort;/** * Created by zhengshouzi on 2015/11/2. */ public c...

iOS基数排序

  • 2014-05-23 15:27
  • 68KB
  • 下载

基数排序算法

  • 2014-08-16 11:17
  • 736B
  • 下载

基数排序的PHP实现

基数排序PHP实现

基数排序——radix-sort

  • 2016-04-15 19:40
  • 205KB
  • 下载

基数排序的性能优化

最近需要对大小在0到100万内的很多数组进行排序,每一个数组的长度都不固定,短则几十,长则几千。为了最快完成排序,需要将数组大小和数据范围考虑进去。由于快速排序是常规排序中速度最快的,首选肯定是它。但...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)