基数排序

来源:互联网 发布:微信跳转淘宝app 编辑:程序博客网 时间:2024/05/21 13:23
#include <iostream>#include <cmath>#include <algorithm>#include "memory.h"#include <cstdio>#include <stack>#include <iterator>#include <utility>#include <cassert>#include <exception>#include <vector>#include <typeinfo>using namespace std;#define N 10void SortBaseNumber(int a[]){    assert(a != NULL);    int count[N];    int b[N];    memset(count,0,sizeof(count));    for (int i = 0; i < N; i++)        count[a[i]]++;    count[0]--;    for (int i = 1; i < N; i++)        count[i] += count[i - 1];    for (int i = N - 1; i >= 0; i--)    {        b[count[a[i]]] = a[i];        count[a[i]]--;    }    for (int i = 0; i < N; i++)        cout<<b[i]<<ends;    cout<<endl;}int main(){    int a[N] = {0,2,3,2,4,2,1,2,9,8};    SortBaseNumber(a);    for (int i = 0; i < N; i++)        cout<<a[i]<<ends;    cout<<endl;} 

0 0
原创粉丝点击